![]() | |
![]() |
| | Thread Tools | Display Modes |
#1
| |||
| |||
|
#2
| |||
| |||
|
#3
| |||
| |||
|
|
"Bob" <email (AT) place (DOT) com> wrote in news:44ad6218@forums-2-dub of sybase.public.sqlanywhere.mobilink: B> 9.0.2.3274 B> PocketPC sync with desktop server. B B> Prior to using MobiLink, I used the BACKUP statement to make a copy of B> my db. No problems. B B> Now I'm starting to use MobiLink. I use the -x argument with the B> DELETE_OLD_LOG option set to ON to get rid of the temporary logs after B> synchronizing. The BACKUP works fine. I see my db/log file pair go B> to the folder specified. No temporary log files go with it. So I B> manually copied the log files over. B B> If I do nothing more than a backup then I can copy the files back into B> my applciation folder and use them to synchronize. B B> If I backup and then synchronize and THEN copy the backup files into B> my applciation folder and use them, I can't synchronize because the B> log offsets are different, .... B B> Using Mobilink with -x / DELETE_OLD_LOGS, is there a way to allow a B> simple backup / restore method on a handheld that can be handled B> programatically? I am bit confused. There is dbbackup -x and dbmlsync -x, which are you using? When you talk about the above, are you running it against the consolidated or the remote? Please show us command line details and examples. -- David Fishburn Certified ASA Developer Version 8 iAnywhere Solutions - Sybase Professional Services Please only post to the newsgroup Please ALWAYS include version and MORE importantly BUILD number with EACH post (dbeng9 -v). EBFs and Maintenance Releases http://downloads.sybase.com/ Developer Community / Whitepapers http://www.ianywhere.com/developer CaseXpress - to report bugs http://casexpress.sybase.com CodeXchange - Free samples http://ianywhere.codexchange.sybase....ctDocumentList |
#4
| |||
| |||
|
|
My apologies, I'm referring to dbmlsync with the -x argument in order to keep the temporary transaction logs to a minimum and a backup being performed on the remote database, NOT the consolidated. I can certainly provide the details of the sync process I use but would they be relevant in this situation? I think it has something to do with the remote being backed (for simplicity assume a simple file copy of the db and ALL log files) up with the log offset at some value X. Then the remote marches on with changes, synchronizations, ... and having a log offset increased to X + ~ value; whatever the log offset might be after several synchronizations. The consolidated maintains this information somewhere I'm sure. Now, replacing the db and ALL log files with the backup (again assume a simple file copy) and then attempting to synchronize fails because of the log offset difference. The consolidated is expecting X+ ~, yet the remote is at just X. Does this help? I can reproduce this with simple manual file copying through explorer. "David Fishburn" <fishburn_spam (AT) off (DOT) ianywhere.com> wrote in message news:Xns97F8ED586AE59fishburnsybasecom (AT) 127 (DOT) 0.0.1... "Bob" <email (AT) place (DOT) com> wrote in news:44ad6218@forums-2-dub of sybase.public.sqlanywhere.mobilink: B> 9.0.2.3274 B> PocketPC sync with desktop server. B B> Prior to using MobiLink, I used the BACKUP statement to make a copy of B> my db. No problems. B B> Now I'm starting to use MobiLink. I use the -x argument with the B> DELETE_OLD_LOG option set to ON to get rid of the temporary logs after B> synchronizing. The BACKUP works fine. I see my db/log file pair go B> to the folder specified. No temporary log files go with it. So I B> manually copied the log files over. B B> If I do nothing more than a backup then I can copy the files back into B> my applciation folder and use them to synchronize. B B> If I backup and then synchronize and THEN copy the backup files into B> my applciation folder and use them, I can't synchronize because the B> log offsets are different, .... B B> Using Mobilink with -x / DELETE_OLD_LOGS, is there a way to allow a B> simple backup / restore method on a handheld that can be handled B> programatically? I am bit confused. There is dbbackup -x and dbmlsync -x, which are you using? When you talk about the above, are you running it against the consolidated or the remote? Please show us command line details and examples. -- David Fishburn Certified ASA Developer Version 8 iAnywhere Solutions - Sybase Professional Services Please only post to the newsgroup Please ALWAYS include version and MORE importantly BUILD number with EACH post (dbeng9 -v). EBFs and Maintenance Releases http://downloads.sybase.com/ Developer Community / Whitepapers http://www.ianywhere.com/developer CaseXpress - to report bugs http://casexpress.sybase.com CodeXchange - Free samples http://ianywhere.codexchange.sybase....ctDocumentList |
#5
| |||
| |||
|
|
Thanks for the help, The dbmlsync.txt file is the output from the ML client. The dbmlsrv_log.txt file is the output from the ML server. Bob "Reg Domaratzki (iAnywhere Solutions)" <FirstName.LastName (AT) ianywhere (DOT) com wrote If the progress value of the consolidated database is higher than the progress value of the remote, it should just ask for a resend from the offset defined at the consolidated database. Since you said you can reproduce this, can you do it again, and then post the verbose output (add -v+ to command line) from both dbmlsync and the MobiLink Server? -- Reg Domaratzki, Sybase iAnywhere Solutions Sybase Certified Professional - Sybase ASA Developer Version 8 Please reply only to the newsgroup iAnywhere Developer Community : http://www.ianywhere.com/developer iAnywhere Documentation : http://www.ianywhere.com/developer/product_manuals ASA Patches and EBFs : http://downloads.sybase.com/swd/base.do -> Choose SQL Anywhere Studio -> Set filter to "Display ALL platforms IN ALL MONTHS" "Bob" <email (AT) place (DOT) com> wrote My apologies, I'm referring to dbmlsync with the -x argument in order to keep the temporary transaction logs to a minimum and a backup being performed on the remote database, NOT the consolidated. I can certainly provide the details of the sync process I use but would they be relevant in this situation? I think it has something to do with the remote being backed (for simplicity assume a simple file copy of the db and ALL log files) up with the log offset at some value X. Then the remote marches on with changes, synchronizations, ... and having a log offset increased to X + ~ value; whatever the log offset might be after several synchronizations. The consolidated maintains this information somewhere I'm sure. Now, replacing the db and ALL log files with the backup (again assume a simple file copy) and then attempting to synchronize fails because of the log offset difference. The consolidated is expecting X+ ~, yet the remote is at just X. Does this help? I can reproduce this with simple manual file copying through explorer. "David Fishburn" <fishburn_spam (AT) off (DOT) ianywhere.com> wrote in message news:Xns97F8ED586AE59fishburnsybasecom (AT) 127 (DOT) 0.0.1... "Bob" <email (AT) place (DOT) com> wrote in news:44ad6218@forums-2-dub of sybase.public.sqlanywhere.mobilink: B> 9.0.2.3274 B> PocketPC sync with desktop server. B B> Prior to using MobiLink, I used the BACKUP statement to make a copy of B> my db. No problems. B B> Now I'm starting to use MobiLink. I use the -x argument with the B> DELETE_OLD_LOG option set to ON to get rid of the temporary logs after B> synchronizing. The BACKUP works fine. I see my db/log file pair go B> to the folder specified. No temporary log files go with it. So I B> manually copied the log files over. B B> If I do nothing more than a backup then I can copy the files back into B> my applciation folder and use them to synchronize. B B> If I backup and then synchronize and THEN copy the backup files into B> my applciation folder and use them, I can't synchronize because the B> log offsets are different, .... B B> Using Mobilink with -x / DELETE_OLD_LOGS, is there a way to allow a B> simple backup / restore method on a handheld that can be handled B> programatically? I am bit confused. There is dbbackup -x and dbmlsync -x, which are you using? When you talk about the above, are you running it against the consolidated or the remote? Please show us command line details and examples. -- David Fishburn Certified ASA Developer Version 8 iAnywhere Solutions - Sybase Professional Services Please only post to the newsgroup Please ALWAYS include version and MORE importantly BUILD number with EACH post (dbeng9 -v). EBFs and Maintenance Releases http://downloads.sybase.com/ Developer Community / Whitepapers http://www.ianywhere.com/developer CaseXpress - to report bugs http://casexpress.sybase.com CodeXchange - Free samples http://ianywhere.codexchange.sybase....ctDocumentList |
#6
| |||
| |||
|
|
You have not recovered this database properly. The first scan on the "recovered" database scans starting at offset 713533 and ends at the current log offset of 750420 : I. 07/07 11:55:29. Log scan starting at offset 0000713533 [snip] I. 07/07 11:55:29. Log scan ended at offset 0000750420 However, the MobiLink server has already received these operations, so it (correctly) rejects the upload and asks that dbmlsync send an upload that starts at the last offset it received from this remote database : I. 07/07 11:55:29. Progress offset mismatch, resending upload from the consolidated database's progress offset We can see that this offset from the MobiLink is 904277. I. 07/07 11:55:29. Log scan starting at offset 0000904277 Dbmlsync fails to find this offset, since the current offset of the remote database is only 750420. I. 07/07 11:55:29. Processing transaction logs from directory "C:\NomsV3\eSOMS.db\NPTS\" I. 07/07 11:55:29. Processing transactions from active transaction log E. 07/07 11:55:29. Unable to find log offset 0000904277 I. 07/07 11:55:29. Hovering at end of active log E. 07/07 11:55:29. Upload aborted at offset 0000904277 Aside : Did you do run this test on the desktop? "C:\NomsV3\eSOMS.db\NPTS\" isn't a valid directory on Windows CE. I'm confused as to why the transaction log with offset 904277 was not in the old logs directory. If you successfully synchronized with MobiLink up to this offset, the renamed transaction log should have existed. -- Reg Domaratzki, Sybase iAnywhere Solutions Sybase Certified Professional - Sybase ASA Developer Version 8 Please reply only to the newsgroup iAnywhere Developer Community : http://www.ianywhere.com/developer iAnywhere Documentation : http://www.ianywhere.com/developer/product_manuals ASA Patches and EBFs : http://downloads.sybase.com/swd/base.do -> Choose SQL Anywhere Studio -> Set filter to "Display ALL platforms IN ALL MONTHS" "Bob" <email (AT) place (DOT) com> wrote Thanks for the help, The dbmlsync.txt file is the output from the ML client. The dbmlsrv_log.txt file is the output from the ML server. Bob "Reg Domaratzki (iAnywhere Solutions)" <FirstName.LastName (AT) ianywhere (DOT) com wrote If the progress value of the consolidated database is higher than the progress value of the remote, it should just ask for a resend from the offset defined at the consolidated database. Since you said you can reproduce this, can you do it again, and then post the verbose output (add -v+ to command line) from both dbmlsync and the MobiLink Server? -- Reg Domaratzki, Sybase iAnywhere Solutions Sybase Certified Professional - Sybase ASA Developer Version 8 Please reply only to the newsgroup iAnywhere Developer Community : http://www.ianywhere.com/developer iAnywhere Documentation : http://www.ianywhere.com/developer/product_manuals ASA Patches and EBFs : http://downloads.sybase.com/swd/base.do -> Choose SQL Anywhere Studio -> Set filter to "Display ALL platforms IN ALL MONTHS" "Bob" <email (AT) place (DOT) com> wrote My apologies, I'm referring to dbmlsync with the -x argument in order to keep the temporary transaction logs to a minimum and a backup being performed on the remote database, NOT the consolidated. I can certainly provide the details of the sync process I use but would they be relevant in this situation? I think it has something to do with the remote being backed (for simplicity assume a simple file copy of the db and ALL log files) up with the log offset at some value X. Then the remote marches on with changes, synchronizations, ... and having a log offset increased to X + ~ value; whatever the log offset might be after several synchronizations. The consolidated maintains this information somewhere I'm sure. Now, replacing the db and ALL log files with the backup (again assume a simple file copy) and then attempting to synchronize fails because of the log offset difference. The consolidated is expecting X+ ~, yet the remote is at just X. Does this help? I can reproduce this with simple manual file copying through explorer. "David Fishburn" <fishburn_spam (AT) off (DOT) ianywhere.com> wrote in message news:Xns97F8ED586AE59fishburnsybasecom (AT) 127 (DOT) 0.0.1... "Bob" <email (AT) place (DOT) com> wrote in news:44ad6218@forums-2-dub of sybase.public.sqlanywhere.mobilink: B> 9.0.2.3274 B> PocketPC sync with desktop server. B B> Prior to using MobiLink, I used the BACKUP statement to make a copy of B> my db. No problems. B B> Now I'm starting to use MobiLink. I use the -x argument with the B> DELETE_OLD_LOG option set to ON to get rid of the temporary logs after B> synchronizing. The BACKUP works fine. I see my db/log file pair go B> to the folder specified. No temporary log files go with it. So I B> manually copied the log files over. B B> If I do nothing more than a backup then I can copy the files back into B> my applciation folder and use them to synchronize. B B> If I backup and then synchronize and THEN copy the backup files into B> my applciation folder and use them, I can't synchronize because the B> log offsets are different, .... B B> Using Mobilink with -x / DELETE_OLD_LOGS, is there a way to allow a B> simple backup / restore method on a handheld that can be handled B> programatically? I am bit confused. There is dbbackup -x and dbmlsync -x, which are you using? When you talk about the above, are you running it against the consolidated or the remote? Please show us command line details and examples. -- David Fishburn Certified ASA Developer Version 8 iAnywhere Solutions - Sybase Professional Services Please only post to the newsgroup Please ALWAYS include version and MORE importantly BUILD number with EACH post (dbeng9 -v). EBFs and Maintenance Releases http://downloads.sybase.com/ Developer Community / Whitepapers http://www.ianywhere.com/developer CaseXpress - to report bugs http://casexpress.sybase.com CodeXchange - Free samples http://ianywhere.codexchange.sybase....ctDocumentList |
#7
| |||
| |||
|
|
For testing, I ran PK in development on the desktop but same result on the handheld. What I did was ... 1. Synchronize some data to the remote. 2. Modified some data in the remote, deleted some stuff, ... 3. Performed another synchronization. 4. Closed the app and copied all of the log files to a temp folder. Then ... 1. Synchronized more data, modified, ... 2. Synchronized again ... 3. Quit the app and MOVED all of the log files and db file to a different temp location 4. Copied all of the first temp log /db files back to the app folder and restarted the app 5. Attempted to synchronize and , boom! error Our original application design, before ML, included the ability to make backups and restores on the handhelds. If a handheld blows up, they could take an SD card with the backup, install to another handheld, restore and they were right back to where they were on the first handheld. But it seems these transaction logs and ML are making this infinitely difficult / impossible to continue doing. Is there any way around this? Bob "Reg Domaratzki (iAnywhere Solutions)" <FirstName.LastName (AT) ianywhere (DOT) com wrote You have not recovered this database properly. The first scan on the "recovered" database scans starting at offset 713533 and ends at the current log offset of 750420 : I. 07/07 11:55:29. Log scan starting at offset 0000713533 [snip] I. 07/07 11:55:29. Log scan ended at offset 0000750420 However, the MobiLink server has already received these operations, so it (correctly) rejects the upload and asks that dbmlsync send an upload that starts at the last offset it received from this remote database : I. 07/07 11:55:29. Progress offset mismatch, resending upload from the consolidated database's progress offset We can see that this offset from the MobiLink is 904277. I. 07/07 11:55:29. Log scan starting at offset 0000904277 Dbmlsync fails to find this offset, since the current offset of the remote database is only 750420. I. 07/07 11:55:29. Processing transaction logs from directory "C:\NomsV3\eSOMS.db\NPTS\" I. 07/07 11:55:29. Processing transactions from active transaction log E. 07/07 11:55:29. Unable to find log offset 0000904277 I. 07/07 11:55:29. Hovering at end of active log E. 07/07 11:55:29. Upload aborted at offset 0000904277 Aside : Did you do run this test on the desktop? "C:\NomsV3\eSOMS.db\NPTS\" isn't a valid directory on Windows CE. I'm confused as to why the transaction log with offset 904277 was not in the old logs directory. If you successfully synchronized with MobiLink up to this offset, the renamed transaction log should have existed. -- Reg Domaratzki, Sybase iAnywhere Solutions Sybase Certified Professional - Sybase ASA Developer Version 8 Please reply only to the newsgroup iAnywhere Developer Community : http://www.ianywhere.com/developer iAnywhere Documentation : http://www.ianywhere.com/developer/product_manuals ASA Patches and EBFs : http://downloads.sybase.com/swd/base.do -> Choose SQL Anywhere Studio -> Set filter to "Display ALL platforms IN ALL MONTHS" "Bob" <email (AT) place (DOT) com> wrote Thanks for the help, The dbmlsync.txt file is the output from the ML client. The dbmlsrv_log.txt file is the output from the ML server. Bob "Reg Domaratzki (iAnywhere Solutions)" FirstName.LastName (AT) ianywhere (DOT) com> wrote in message news:44ae6a36$1 (AT) forums-1-dub (DOT) .. If the progress value of the consolidated database is higher than the progress value of the remote, it should just ask for a resend from the offset defined at the consolidated database. Since you said you can reproduce this, can you do it again, and then post the verbose output (add -v+ to command line) from both dbmlsync and the MobiLink Server? -- Reg Domaratzki, Sybase iAnywhere Solutions Sybase Certified Professional - Sybase ASA Developer Version 8 Please reply only to the newsgroup iAnywhere Developer Community : http://www.ianywhere.com/developer iAnywhere Documentation : http://www.ianywhere.com/developer/product_manuals ASA Patches and EBFs : http://downloads.sybase.com/swd/base.do -> Choose SQL Anywhere Studio -> Set filter to "Display ALL platforms IN ALL MONTHS" "Bob" <email (AT) place (DOT) com> wrote in message news:44ae50f8$1 (AT) forums-1-dub (DOT) .. My apologies, I'm referring to dbmlsync with the -x argument in order to keep the temporary transaction logs to a minimum and a backup being performed on the remote database, NOT the consolidated. I can certainly provide the details of the sync process I use but would they be relevant in this situation? I think it has something to do with the remote being backed (for simplicity assume a simple file copy of the db and ALL log files) up with the log offset at some value X. Then the remote marches on with changes, synchronizations, ... and having a log offset increased to X + ~ value; whatever the log offset might be after several synchronizations. The consolidated maintains this information somewhere I'm sure. Now, replacing the db and ALL log files with the backup (again assume a simple file copy) and then attempting to synchronize fails because of the log offset difference. The consolidated is expecting X+ ~, yet the remote is at just X. Does this help? I can reproduce this with simple manual file copying through explorer. "David Fishburn" <fishburn_spam (AT) off (DOT) ianywhere.com> wrote in message news:Xns97F8ED586AE59fishburnsybasecom (AT) 127 (DOT) 0.0.1... "Bob" <email (AT) place (DOT) com> wrote in news:44ad6218@forums-2-dub of sybase.public.sqlanywhere.mobilink: B> 9.0.2.3274 B> PocketPC sync with desktop server. B B> Prior to using MobiLink, I used the BACKUP statement to make a copy of B> my db. No problems. B B> Now I'm starting to use MobiLink. I use the -x argument with the B> DELETE_OLD_LOG option set to ON to get rid of the temporary logs after B> synchronizing. The BACKUP works fine. I see my db/log file pair go B> to the folder specified. No temporary log files go with it. So I B> manually copied the log files over. B B> If I do nothing more than a backup then I can copy the files back into B> my applciation folder and use them to synchronize. B B> If I backup and then synchronize and THEN copy the backup files into B> my applciation folder and use them, I can't synchronize because the B> log offsets are different, .... B B> Using Mobilink with -x / DELETE_OLD_LOGS, is there a way to allow a B> simple backup / restore method on a handheld that can be handled B> programatically? I am bit confused. There is dbbackup -x and dbmlsync -x, which are you using? When you talk about the above, are you running it against the consolidated or the remote? Please show us command line details and examples. -- David Fishburn Certified ASA Developer Version 8 iAnywhere Solutions - Sybase Professional Services Please only post to the newsgroup Please ALWAYS include version and MORE importantly BUILD number with EACH post (dbeng9 -v). EBFs and Maintenance Releases http://downloads.sybase.com/ Developer Community / Whitepapers http://www.ianywhere.com/developer CaseXpress - to report bugs http://casexpress.sybase.com CodeXchange - Free samples http://ianywhere.codexchange.sybase....ctDocumentList |
![]() |
| Thread Tools | |
| Display Modes | |
| |