3.2.4. RTI Infrastructure Services

3.2.4.1. RTI Persistence Service

3.2.4.1.1. Creation of Persistence Service instance using Persistence Service library will change DomainParticipantFactoryQos settings by default

Release 7.7.0 contains a new parameter in RTI_PersistenceServiceProperty called initialize_dp_factory, which indicates if the DomainParticipantFactory should be initialized or not when creating the Persistence Service instance. Setting the parameter to TRUE may overwrite previous DomainParticipantFactoryQos values that you may have set in your application before creating the Persistence Service instance. By default, it is set to TRUE.

To go back to old behavior, set initialize_dp_factory to FALSE.

3.2.4.1.2. Persistence Service default setting changes may increase memory utilization

This release has updated the default configuration of use_wait_set in the <persistence_group> tags to TRUE, improving the performance of Persistence Service. In fact, use_wait_set has been deprecated. See Deprecation of <use_wait_set> below.

This release has also changed the default configuration of single_subscriber and single_publisher to FALSE, optimizing scalability for scenarios involving multiple concurrent applications.

Although these changes improve performance and scalability, you may notice increased memory utilization when running Persistence Service.

See Creating Persistence Groups, in the RTI Connext Core Libraries User’s Manual, for more information on these settings.

3.2.4.1.3. Deprecation of <use_wait_set>

In release 7.7.0, Persistence Service now always uses WaitSets, to improve performance. As a result, Listener-based execution mode is deprecated, and Persistence Service will always use waitsets for reading and writing data. The <use_wait_set> tag is deprecated.

While Connext still accepts the <use_wait_set> tag in configuration files for backward compatibility, any value in it will be ignored, and a log message will be printed to clarify this behavior.

Most customers will not need to take any action, since <use_wait_set> defaults to TRUE in 7.7.0, and in earlier releases it defaults to FALSE, but the new behavior will simply ignore it. However, if your configuration explicitly sets <use_wait_set> to FALSE, Persistence Service will log a warning and proceed with WaitSet mode.

See the Persistence Service Release Notes for more information on this and other improvements to Persistence Service in 7.7.0. See also Creating Persistence Groups, in the RTI Connext Core Libraries User’s Manual, for more information on WaitSets in Persistence Service.

3.2.4.2. Routing Service

3.2.4.2.1. Recompile custom adapter code

Release 7.7.0 has fixed a bug in Routing Service, ROUTING-1317, that resulted in adding a field to a public interface struct/class. If you created a custom adapter, you need to recompile your code based on the new header (C/C++). This field is private and used internally by Routing Service; it is not intended for customer use, but it does require recompiling.

3.2.4.3. Web Integration Service

3.2.4.3.1. Deprecation and new minimum value of -maxObjectsPerThread

In release 7.7.0, Web Integration Service deprecates the -maxObjectsPerThread command-line option. The Core Libraries already deprecated the corresponding QoS field in release 7.4.0. If you were previously setting -maxObjectsPerThread to a value that was less than 140, you need to set it to a value that is at least 140 in order to successfully initialize Web Integration Service because Monitoring Library 2.0 might be enabled by default in Web Integration Service.