3.4.2.10. RTI Persistence Service

3.4.2.10.1. External Database Compatibility

Previously, if you wanted to use MySQL as the external database (to use some of the durability features of Connext), you needed MySQL 5.1 or higher. Now, in Connext 6, you need MySQL 5.5 or higher.

See the Persistence Service Release Notes and the Getting Started Guide Addendum for Database Setup for more information.

3.4.2.10.2. Persistent Storage (Database) Format Compatibility

In 6.0.0, the schema of the persistent storage files and tables created by Persistence Service to store DDS samples and instances has changed. Therefore, you cannot use the files and/or tables generated with previous releases of Persistence Service with Connext 6.

If you have this requirement, contact RTI Support at support@rti.com.

3.4.2.10.3. Persistence Storage (Database) Locking Compatibility

In 5.3.0, a feature was introduced that prevents multiple Persistence Service instances from using the same database at the same time. This feature consists of a database locking mechanism, which prevents a Persistence Service instance from connecting to a database if the database is already in use by another instance.

In 5.3.0, if Persistence Service finished ungracefully, the database remained locked and required manual intervention to unlock the database.

Starting in 6.0.0, the following changes were introduced to make this feature more friendly in the ungraceful termination scenario:

  • The database locking is now disabled by default. If you want to prevent multiple instances of Persistence Service from accessing the same database, you now need to use the command line parameter -enableDatabaseLocking.

  • The database locking is renewed periodically. If the locking has not been renewed within a certain period of time, the database will be considered unlocked. This way, if an ungraceful termination of the service happens, another Persistence Service instance can start and use the same database after the previous lock expires. The locking refresh period can be controlled with the new command-line argument (-databaseLockRefreshPeriod).

  • The -disableDatabaseLocking command-line argument has been deprecated.

3.4.2.10.4. Dynamically Linked Libraries

In Connext 6, Persistence Service is no longer statically linked with the core libraries, but dynamically linked. This means that Persistence Service will load the Connext core libraries (for example, libnddsc.so and libnddscore.so, for Linux systems) at runtime. As a result, running Persistence Service as a standalone product no longer works, since it depends on the Connext core libraries. If you need to run this product standalone, contact RTI Support at support@rti.com.