11.5.2. What’s Fixed in 6.1.0

11.5.2.1. Non-zero throughput monitoring metrics were provided while service was paused

Recording Service provided non-zero throughput monitoring metrics while the service was paused. It provided the number of samples being received by the underlying DataReader. This problem has been resolved. Now when the service is paused, the reported throughput value will be zero.

[RTI Issue ID RECORD-1018]

11.5.2.2. Executable did not log build ID for DDS libraries

The executable version of Recording Service did not log the build ID of DDS libraries, no matter which verbosity level was specified. This was a regression from the previous version, where the build ID was logged for the warning verbosity. This problem has been resolved.

[RTI Issue ID RECORD-1024]

11.5.2.3. XML Converter, rtixmlconverter, did not show its version properly

The XML Converter tool, rtixmlconverter, reported this error if you tried to see its version with rtixmlconverter -version:

main:!parse_before_common:!parse 'must specify conversion of record or replay xml': argument missing

The version was only displayed if you also passed other parameters (record/replay and a configuration filename). This problem has been resolved. Now you can enter rtixmlconverter -version to see the version number.

[RTI Issue ID RECORD-1043]

11.5.2.4. XMLConverter threw “multiple deserialization modes” warning in some cases

XMLConverter (rtixmlconverter) threw the following warning when converting a Recording Service 5.3.1 configuration file:

Warning: Recording Service does not currently support multiple deserialization
modes in a single recording.

This problem has been resolved.

[RTI Issue ID RECORD-1056]

11.5.2.5. Segmentation fault when using non-compliant XML configuration on a QNX system

Using a non-compliant XML configuration with the Recording Service XSD file caused a segmentation fault when trying to process that configuration. This issue, which only occurred on QNX systems, has been resolved.

[RTI Issue ID RECORD-1122]

11.5.2.6. Segmentation fault after discovering application that used UserData QoS Policy

If Recording Service discovered an application that had at least one entity (DomainParticipant, DataReader, or DataWriter) that used the UserData QoS Policy, the behavior was undefined and would likely have resulted in a segmentation fault. This problem has been resolved.

[RTI Issue ID RECORD-1125]

11.5.2.7. Replay Service did not detect termination correctly

Replay Service failed to detect termination correctly under certain conditions. This problem has been resolved.

[RTI Issue ID RECORD-1129]

11.5.2.8. Windows debug assertions thrown when running in debug mode

Windows debug assertions were sometimes thrown by the debug version of the Replay and Converter executables. This prevented users from running these services successfully on Windows systems when debugging issues. This problem has been resolved.

[RTI Issue ID RECORD-1136]

11.5.2.9. Monitoring Config Topic contained incomplete information about Topics created from TopicGroups

Samples sent on the Config monitoring topic did not include information for recording Topic entities that were created from TopicGroups. The missing information included:

  • topic_name

  • registered_type_name

  • participant_name

  • topic_group resource ID

This problem has been resolved so the missing information is provided.

[RTI Issue ID RECORD-1146]

11.5.2.10. Crash if monitoring enabled and TopicGroup matched with Topic name containing ‘/’ character

Recording Service crashed if monitoring was enabled and a TopicGroup matched with a Topic name that contained one or more forward slash (‘/’) characters. This problem has been resolved.

[RTI Issue ID RECORD-1153]

11.5.2.11. Replay Monitoring reported increasing current timestamp while service was paused

The current timestamp value provided as part of ServicePeriodic::builtin_sqlite was always increasing, even while the service was paused. However in Replay mode, this value is expected to remain constant while the service is paused. This problem has been resolved.

The following changes in IDL were required:

  • Deprecated the fields current_timestamp_sec and current_timestamp_nanosec in SqliteDatabasePeriodic. These values are present but will be always set to zero.

  • Added a new field, current_timestamp_nanos under ServicePeriodic, that represents that current timestamp for both Recording and Replay modes, regardless of the storage being used.

[RTI Issue ID RECORD-1170]

11.5.2.12. RTI Converter did not properly convert Sequence Numbers from SampleInfo field

RTI Converter did not properly process sequence numbers from the SampleInfo field. This caused those fields to always be set to -1 or UINT32_MAX (0xFFFFFFFF). This problem has been resolved.

[RTI Issue ID RECORD-1228]

11.5.2.13. Recording/Replay Service crashed when receiving wrong remote admin request for updating service state

Both Recording Service and Replay Service may have crashed when receiving an UPDATE remote administration request to update the service state (e.g., using resource ID /recording_services/<service name>/state or /replay_services/<service name>/state).

If the octet body field of the request was not filled in properly (by serializing the CDR representation of the desired state), and instead contained random data or the serialization of a different type of sample, Recording Service and Replay Service could crash.

This problem has been resolved.

[RTI Issue ID RECORD-1249]