This article provides some troubleshooting support.


Problems with Main Server

The main server will not start.

Error message

This database has transaction info and needs a journal file to start.


Resolution

The database has been initialized to run with journaling enabled, but you are trying to run with no journal file specified or it cannot locate the journal file. The following possible alternative fixes can be tried in this order: 

  1. Browse to and select the selected database's journal file in the Journal file: field. This will likely resolve the error.
    OR
  2. If you have decided to run without journaling or have taken a copy of the database for test and are getting this error with the test database, you will need to remove journaling. If, at a later date, you want to run a mirror server against the main server, you have to use the database manager to restart journaling by creating a new one

The main server will not start. 

Error message

Journal ahead of database.


Resolution

The journal file and the database are out of sync. You may be running an old version of the database against a newer version of the journal file. This can happen if you reload a backup of the database. The following possible alternative fixes can be tried in this order: 

  1. You are running the wrong database or the wrong journal file. Check that the journal file belongs to the database.
    OR
  2. Resync the database against the journal file.
    OR
  3. Remove journaling and create a new journal file. If you are running mirror servers, their caches may now be invalid and they need to be recreated.

The main server will not start. 

Error message

Database transaction does not exist in journal.


Resolution

The journal file and the database are not compatible. The journal file does not contain information about the last transaction done in this database. This can happen if the journal file is "older" than the database, or if entries have been removed from the journal. The following possible alternative fixes can be tried in this order:

  1. You are running the wrong database or the wrong journal file. Check that the journal file belongs to the database.
    OR
  2. Remove journaling and create a new journal file. If you are running mirror servers, their caches may now be invalid and they need to be recreated.

The main server will not start. 

Error message

Last transaction info not found i db.


Resolution

The journal file and the database are not compatible. The journal file does not contain information about the last transaction done in this database.  The swjournal file is specified and exists, but there is no transaction information in the database. The following possible alternative fixes can be tried in this order:

  1. You are running the wrong database or the wrong journal file. Check that the journal file belongs to the database.
    OR
  2. Remove journaling and create a new journal file. If you are running mirror servers, their caches may now be invalid and they need to be recreated

Problems with Mirror Server

The mirror server will not start. 

Error message

User does not exist or invalid password. 


Resolution

You need to specify the correct password for the "system" account to enable the mirror server to connect to the main server.


The mirror server will not start.

Error message

Database transaction does not exist in journal.


Resolution

The mirror server cache and the main server database with journaling are not in sync. This cannot happen during normal operations. It can happen if you restart the main server against a newer journal file. The most common error is trying to connect to the wrong main server. The following possible alternative fixes can be tried in this order:

  1. Verify that you are trying to login to the correct main server, i.e., that the host and IP address are correct.
    OR
  2. Restart with new cache file.

The mirror server will not start.

Error message

Error - Could not verify transaction, Journaling not enabled.


Resolution

You are trying to start a mirror server against a main server that has not been prepared for mirroring. Restart the main after enabling journaling.


The mirror server will not start.

Error message

Mirror login refused: journaling is not enabled


Resolution

The following possible alternative fixes can be tried in this order: 

  1. Verify that you are logging in to the correct main server. 
  2. If you want to run with a mirror server against this main server, you need to enable journaling.

The mirror server will not start.

Error message

Incomplete transaction info in db


Resolution

The journal file and the database are not compatible. The journal file does not contain info about the last transaction done on the selected database. This can happen if the journal file is "older" than the database. The following possible alternative fixes can be tried in this order: 

  1. Verify that you are logging in to the correct main server and/or have the correct journal file selected.
    OR
  2. Remove journaling and create a new journal file.

Users cannot connect to the mirror server.

Error message

Error communicating with server. Connection to server is terminated.


Resolution

The mirror server cannot connect to the main server. Investigate if the main server is down. It will need to be restarted and then the mirror server(s) will need to be restarted.


The mirror server will not start.

Error message

Could not open database


Resolution

The server is unable to recognize the cache file. Verify that the file is not encrypted.


The mirror server will not start.

Error message

Password for sqlite not supported.


Resolution

Verify that the file is not encrypted.


The mirror server will not start.

Error message

Object with id 'xxxxxxxxxxxxxxxxxxxx' not found


Resolution

If the main server starts and runs successfully, it is likely that you just need to generate a new cache file for the mirror server.


The mirror server will not start.

Error message

Error - Unexpected exception calling DB server: [FireDAC][Phys][SQLite] ERROR: attempt to write a readonly database


Resolution

Verify the following: 

  1. Make sure the cache file is not Read-only.
  2. Confirm the account running the server application has minimum Write access to the directory where cache file is located 
  3. Confirm the account running the server application has minimum Write access to the cache file
  4. Confirm that no other process has the file open at the same time (e.g., check Task Manager Details for hung tasks that are using the cache file)

The mirror server will not start.

Error message

The requested transaction id is no longer available in the journal.


Resolution

The mirror server cache and the main server database with journaling are not in sync. The mirror server is "asking" for a transaction that does not exist in the main server journal. 

  1. Restart with new cache file.

I have created a new sqlite database file, journal file and cache file, and the mirror server will not start.

Error message

Assertion failure


Resolution

If the database is new, you must first start and then stop the main server using the new database before creating the journaling files, i.e., the .swjournal and .cache files. You will need to create a new .cache if you receive this error.


The main server went down due to networking issues and after a restart, the mirror server will not start.

Error message

Journal file does not belong to this db.


Resolution

The mirror server's cache file has more transactions than what the main database and journal file have. The solution is to create a new cache file.


Problems in DatabaseManager

You are trying to create a cache file.

Error message

Cannot create cache file if journaling has not been enabled.


Resolution

The database is not set up for journaling. Before you can create a cache file, you must first enable journaling.


You are trying to run a fix script on the database.

Error message

You need to start a transaction to do operations on a database with transaction info.


Resolution

Before running the script, you will need to disable journaling. Once the script is run successfully, initialize journaling again and create new cache files for your mirror servers. 


Problems in Test Environment

I am trying to run a copy of the production db in a test environment. 

Error message

Unexpected crash: Journal ahead of database.


Resolution

If you have taken a copy of the production database and production database journal for use in a test environment, most likely the journal will be ahead of the database copy.  The following possible alternative fixes can be tried in this order: 

  1. You do not need to have journaling enabled in your test environment. Simply remove journaling for the database copy that you have in your test environment.
    OR
  2. If you do want journaling enabled in your test environment, you will need a copy of the journal file from production and include it in the test server configuration.