Syncagent 11.3 Locks SQLITE Database In A Windows Mobile 6.5 Application (Doc ID 1677555.1)

Last updated on SEPTEMBER 21, 2016

Applies to:

Oracle Database Mobile Server - Version 11.3.0.0.0 and later
Information in this document applies to any platform.

Symptoms

On : 11.3.0.0.0 version, Issues affecting all clients

When attempting to use the Syncagent and the application at the same time
the following error occurs.

ERROR
-----------------------
EXCEPTION: System.Data.SQLite.SQLiteException: database is locked
database is locked
  at System.Data.SQLite.SQLite3.Step(SQLiteStatement stmt)
  at System.Data.SQLite.SQLiteDataReader.NextResult()
  at System.Data.SQLite.SQLiteDataReader..ctor(SQLiteCommand cmd, CommandBehavior behave)
  at System.Data.SQLite.SQLiteCommand.ExecuteReader(CommandBehavior behavior)
  at System.Data.SQLite.SQLiteCommand.ExecuteDbDataReader(CommandBehavior behavior)
  at System.Data.Common.DbCommand.System.Data.IDbCommand.ExecuteReader()


STEPS
-----------------------
The issue can be reproduced at will with the following steps:
1.- The application without data starts succesfully, the user synchronizes inside the application with the manual sync API for C# succesfully.

2. Inmediately, the sync agent process is started with the API for C#.

3. The user works with the app and the data is sent to the server when gprs is available.

4. The user do a battery swap, so the handheld resets.

5.- Entering the application again, the application opens the database and start the sync agent process.

6.- In the first attempt to do an operation on the database, the application crashes because the "database is locked"

Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms