8. Regressions
Regressions are documented only in the release in which they were introduced. For example, a regression introduced in 6.0.0 and fixed in 6.1.0 exists in both 6.0.0 and 6.0.1, but will only be listed in the 6.0.0 Regressions section below. Each regression entry says in which release the regression was fixed.
Regressions fixed in 7.0.0, 7.1.0, or 7.2.0 are also fixed in 7.3.0, because 7.3.0 includes 7.0.0, 7.1.0, and 7.2.0.
Note
This Migration Guide focuses on the major, three-digit (LTS or feature) releases (6.0.1, 6.1.2, 7.3.0, etc.) in which a regression is introduced or fixed. Some regressions are also introduced or fixed in patch releases (such as 6.0.1.30), which are not mentioned in this Migration Guide. To find out if a regression is introduced or fixed in a patch release, contact RTI Support at support@rti.com or via the RTI Customer Portal (https://support.rti.com).
- 8.1. Regressions in 7.4.0
- 8.2. Regressions in 7.3.0
- 8.3. Regressions in 7.2.0
- 8.3.1. Core Libraries
- 8.3.1.1. Sentinel constant for “invalid” Time contained unexpected value
- 8.3.1.2. Error message printed for each filtered sample when using writer-side filtering, FlatData, and Zero Copy over shared memory
- 8.3.1.3. RTI Monitor unable to start due to missing nddsjava.jar in rti_connext_dds-7.2.0/lib/java in LM bundles
- 8.3.2. Security Plugins
- 8.3.1. Core Libraries
- 8.4. Regressions in 7.1.0
- 8.5. Regressions in 7.0.0
- 8.5.1. Core Libraries
- 8.5.1.1. Some properties no longer accept LENGTH_UNLIMITED string as valid value
- 8.5.1.2. Possible segmentation fault while enabling a DataWriter that enables batching
- 8.5.1.3. Running out of memory during DomainParticipant creation causes DomainParticipantFactory finalization to hang
- 8.5.1.4. Arbitrary read access while parsing malicious RTPS message
- 8.5.1.5. DDS fragmentation leads to more fragments than expected for a sample
- 8.5.1.6. TCP transport debug library in Windows does not work with IOCP socket monitoring
- 8.5.2. Security Plugins
- 8.5.3. Persistence Service
- 8.5.1. Core Libraries
- 8.6. Regressions in 6.1.1/6.1.2
- 8.6.1. Core Libraries
- 8.6.1.1. Stack smashing error when serializing strings with RTI_CDR_SIZEOF_LONG_DOUBLE set to 16 in C++11 in release mode using GCC compiler
- 8.6.1.2. Reliable DataReader may stop receiving samples from DataWriter using durable writer history and DDS fragmentation
- 8.6.1.3. Unexpected precondition error with debug libraries on a reliable DataWriter while sending a GAP
- 8.6.1.4. Unexpected warning during discovery when multicast disabled
- 8.6.2. Security Plugins
- 8.6.3. Persistence Service
- 8.6.4. Limited Bandwidth Plugins
- 8.6.1. Core Libraries
- 8.7. Regressions in 6.1.0
- 8.7.1. Core Libraries
- 8.7.1.1. Possible memory leak when initializing and finalizing the DomainParticipantFactory concurrently
- 8.7.1.2. max_samples resource limit not honored in some cases when using an unkeyed Topic and TopicQueries
- 8.7.1.3. DomainParticipant with non-default metatraffic_transport_priority QoS does not complete discovery
- 8.7.1.4. Broken communication when DataWriter with transport priority discovers DataReader with multicast receive address
- 8.7.1.5. No more than 100 asynchronous publisher threads can be created
- 8.7.1.6. Linking static Linux or QNX libraries with object files built with -fPIC will fail
- 8.7.1.7. Invalid serialization of samples with types containing nested structures with primitive members that require padding
- 8.7.1.8. Significant performance degradation when using MultiChannel DataWriters
- 8.7.1.9. Significant performance regression on Windows when using OpenSSL 1.1.1 libraries in 6.1.0
- 8.7.1.10. ReadCondition may incorrectly stay enabled after sample in READ sample state removed from the DataReader’s queue
- 8.7.1.11. Missing SampleInfo.ReceptionTimestamp property (C# API only)
- 8.7.2. Code Generator
- 8.7.2.1. Java subscriber may not preserve union discriminator value, when discriminator is enum
- 8.7.2.2. Compile-time error when using -constructor with types containing sequence of pointers
- 8.7.2.3. Invalid serialization of samples with types containing nested structures with primitive members that require padding
- 8.7.3. Admin Console
- 8.7.4. TLS Support
- 8.7.5. Security Plugins
- 8.7.6. Routing Service
- 8.7.7. Recording Service
- 8.7.8. Cloud Discovery Service
- 8.7.1. Core Libraries
- 8.8. Regressions in 6.0.1
- 8.8.1. Core Libraries
- 8.8.1.1. Samples lost if multiple readers were created in same locator and push_on_write was set to false
- 8.8.1.2. XML parser crashed from infinite recursion when XML QoS configuration contained inheritance loop
- 8.8.1.3. Possible issues with communication and enabling DomainParticipant on Windows systems if network interface had multiple IP addresses
- 8.8.1.4. Failure to allocate memory larger than 2 GB
- 8.8.2. Recording Service
- 8.8.3. Prototyper
- 8.8.1. Core Libraries
- 8.9. Regressions in 6.0.0
- 8.9.1. Core Libraries
- 8.9.1.1. XCDR serialization of a mutable union with an unknown discriminator value is not compliant with OMG specification
- 8.9.1.2. Participant may receive RTPS traffic over SHMEM transport not intended for participant
- 8.9.1.3. Instance handling on a DataReader and filtering operations in ContentFilteredTopics, QueryConditions, TopicQueries, and Multi-Channel DataWriters may fail
- 8.9.1.4. Creating DynamicDataTypePlugin with TypeCode from discovery and using content filtering causes segmentation fault
- 8.9.1.5. Crash with NULL listeners and non-none status masks in C applications that mix types with and without Zero Copy
- 8.9.1.6. Application using Monitoring Libraries produces segmentation fault during DataReader creation
- 8.9.1.7. Continuous creation of TopicQueries may lead to unnecessary memory fragmentation in OS memory allocator
- 8.9.1.8. XSD issue: order enforced in <publisher> tag
- 8.9.1.9. Invalid key deserialization for mutable derived types with key members
- 8.9.1.10. Malformed samples with invalid strings not dropped by DataReader in C, traditional C++, and modern C++
- 8.9.1.11. Unexpected log message when calling DataWriter::get_matched_subscription_data or DataReader::get_matched_publication_data on unmatched endpoints
- 8.9.1.12. XSD issues
- 8.9.1.13. Dynamic Data issues
- 8.9.1.13.1. Segmentation fault when using unkeyed DynamicData DataReader with content filter and writer-side filtering
- 8.9.1.13.2. Invalid serialization of samples with types containing primitive members that require padding
- 8.9.1.13.3. Possible data corruption or crash when using DynamicData and a type with inheritance
- 8.9.1.13.4. Missing parameter checking for several DynamicData APIs results in segmentation faults or incorrect return codes
- 8.9.1.13.5. Binding to unset optional member causes some operations on parent DynamicData object to fail
- 8.9.1.14. Discovery does not complete, and there is no error
- 8.9.1.15. Crash when deserialized_type_object_dynamic_allocation_threshold set to 0
- 8.9.1.16. Wrong return code for DDS::DataWriter::get_matched_subscription_data and DDS::DataReader::get_matched_publication_data
- 8.9.1.17. DataReader reports incorrect sample lost and rejected when receiving coherent set
- 8.9.1.18. QoS policies not resolved to correct values
- 8.9.2. Security Plugins
- 8.9.2.1. Discovery time scales poorly
- 8.9.2.2. Possible lack of SUBSCRIPTION_MATCHED_STATUS if a DataWriter loses liveliness with the DataReader
- 8.9.2.3. Applications directly calling OpenSSL APIs after DomainParticipant deletion may crash
- 8.9.2.4. DataWriter does not report PUBLICATION_MATCHED_STATUS for DataReaders that are inactive when it receives their key material
- 8.9.3. Code Generator
- 8.9.3.1. Change in behavior in C and traditional C++ for sequences of bounded strings under certain conditions when code is generated with optimization level 1 or 2
- 8.9.3.2. Invalid key deserialization for mutable derived types with key members
- 8.9.3.3. Malformed samples with invalid strings not dropped by DataReader in C, traditional C++, and modern C++
- 8.9.3.4. Invalid serialization of samples with types containing primitive members that require padding
- 8.9.3.5. Java exception during serialization/deserialization of keyed types whose key is an unkeyed nested type with unbounded members
- 8.9.3.6. Incorrect deserialization in .Net of samples from certain types when published from a writer with disable_inline_keyhash set to true
- 8.9.3.7. Generated code in traditional C++ with namespaces for an IDL containing a nested module called “rti” will not compile
- 8.9.4. Routing Service
- 8.9.5. Recording Service
- 8.9.5.1. Segmentation fault after discovering application that used UserData QoS Policy
- 8.9.5.2. Legacy deserialized database table cannot be replayed or converted if it contains compact byte sequences or arrays
- 8.9.5.3. Segmentation fault in Replay Service or Converter if recorded topics have “::” in their names
- 8.9.6. Cloud Discovery Service
- 8.9.1. Core Libraries