cancel
Showing results for 
Search instead for 
Did you mean: 

SMP 2.3 SP04 - timeout and retry logic

Former Member
0 Kudos

Hello everyone,

My name is Marc, we have been working on a SMP 2.3 SP04 MBO Android native application that connects through Relay Server, and sometimes, when performing big synchronizations, we are getting some random (not always) timeout errors:


'com.ianywhere.ultralitejni16.implementation.JniException: UltraLiteJ Error[-1305]: MobiLink communication error -- code: 201, parameter: 128, system code: 0Details:

StreamErrorCode = 201

StreamErrorMessage = 128

We have been doing some research and found this document at sybase infocenter, it says:

"For Java/UltraliteJ you cannot set a timeout, because UltraLiteJ does not provide an API to set a timeout value for client connection..."

But actually in the "stream parameters" at the SynchronizationProfile, we are able to set up the timeout. Will it be ignored?.


MyAppDB.getSynchronizationProfile().getStreamParams().setTimeout(600);


My questions are:

  1. Are we doing it right? is there any way to increase the synchronization timeout for an Android client?
  2. For an automatic retry logic when a timeout occurs, how much time we should wait between synchronizations for avoiding a ml_database locked error? Right now, when re-synchronizing 2 seconds after the timeout we are experiencing this lock error (appears at srvml_err.log file):


Error: [-10279] Connection was dropped due to a lack of network activity

Warning:  [10050] ODBC: [Sybase][ODBC Driver][SQL Anywhere]User 'DBA' has the row in 'ml_database' locked (ODBC State = 40001, Native error code = -210)

Error: [-10343] The remote database identified by remote ID '<id>' is already synchronizing or the database connection is unusable: unable to access the lock

Thank you for your help,

Marc.

View Entire Topic
0 Kudos

the timeout option should be available with the most recent SPs. As the documentation suggested, the timeout parameter will simply be ignored.

The suggestion is to try and upgrade to the latest SP08.