cancel
Showing results for 
Search instead for 
Did you mean: 

How to prevent corruption of subscription log offsets?

former_member329524
Active Participant
0 Kudos

Hello, all

I have the following situation:

Numerous client sites synchronize with the consolidated DB's using Mobilink.

The center URL is specified in the Mobilink user.

Sometimes there is a need to change the synchronization URL. In order to do that IT people open Sybase central, stop Mobilink client service, change the URL in the user and start the service again.

If they do not stop the service, then sometimes the sync stops working, because log offsets get corrupted.

My question is: is it possible to prevent corruption of the log offsets from SQL script, so the IT people would not need to open Sybase central again and application users could do it from client application?

Accepted Solutions (0)

Answers (1)

Answers (1)

chris_keating
Advisor
Advisor
0 Kudos

I am not really sure what you mean by corrupt offsets. Can you explain?

former_member329524
Active Participant
0 Kudos

The problem, which occurs is similar to backup with log truncation.

The error show reads like :

//------------------------------

I. 2009-08-18 08:31:39. Log scan starting at offset XXXXX

E. 2009-08-18 08:31:39. Unable to find log offset XXXXX

E. 2009-08-18 08:31:39. Upload aborted at offset XXXXXX

//------------------------------

regdomaratzki
Advisor
Advisor
0 Kudos

An inability to find a particular log offset is not something that should be caused by altering the address in the synchronization subscription.

To directly answer your question in the first post :

If you need to change the URL being used for a particular synchronization subscription, you should not need to open Sybase Central.  Sybase Central is only executing SQL against the database, which you can code into your application.  The example SQL below will change the host and port of the MobiLink Server on a remote database that has already successfully synchronized, assuming that you have originally specified the address in the synchronization user, which I believe is what you said you do.

ALTER SYNCHRONIZATION USER rem1 ADDRESS 'host=new_host;port=8888';

Executing this statement should not cause any issues with finding log offsets during the next synchronization.

There is likely "something else" that your IT people are doing in Sybase Central that is causing the problem you are seeing.  Have you documented what your IT people do in Sybase Central to change the URL?  Can you post the exact error in the dbmlsync log after this process?


Reg