RTI Connext Migration Guide Logo
7.6.0
  • 1. Important: How to Use this Guide
    • 1.1. Upgrade Path
    • 1.2. Upgrade Steps
    • 1.3. Regenerating Code and Updating Your Projects
      • 1.3.1. Generated code compatibility
      • 1.3.2. Updating your projects
        • 1.3.2.1. C and C++ applications
        • 1.3.2.2. Java applications
        • 1.3.2.3. C# applications
        • 1.3.2.4. Python applications
      • 1.3.3. Updating your source code
  • 2. Upgrading from 7.5.0 to 7.6.0
    • 2.1. General Compatibility 7.6.0
      • 2.1.1. Wire Compatibility
        • 2.1.1.1. Configure compatibility with Java keyhash calculation in previous releases
    • 2.2. Product-Specific Compatibility 7.6.0
      • 2.2.1. RTI Connext Core Libraries
        • 2.2.1.1. API Compatibility
        • 2.2.1.2. Configuration Changes
        • 2.2.1.3. Logging Changes
      • 2.2.2. RTI Code Generator
        • 2.2.2.1. Changed default mapping for Modern C++ to “IDL4 to C++”
      • 2.2.3. RTI Security Plugins
        • 2.2.3.1. Wire Compatibility
        • 2.2.3.2. Changes to Building an Application
        • 2.2.3.3. Configuration Changes
        • 2.2.3.4. API Changes
        • 2.2.3.5. Security Plugins SDK
      • 2.2.4. RTI TLS Support
        • 2.2.4.1. OpenSSL 3 upgrade
      • 2.2.5. RTI Infrastructure Services
        • 2.2.5.1. Persistence Service
        • 2.2.5.2. Web Integration Service
      • 2.2.6. RTI Admin Console
        • 2.2.6.1. Remote debugging between 7.5.0 and 7.6.0 does not work
        • 2.2.6.2. Collector Service XML profile name changes for remote debugging
      • 2.2.7. RTI Observability Framework
        • 2.2.7.1. Remote debugging between 7.5.0 and 7.6.0 does not work
  • 3. Upgrading from 7.4.0 to 7.5.0
    • 3.1. General Compatibility 7.5.0
      • 3.1.1. Wire Compatibility
        • 3.1.1.1. DataReader in 7.5.0 may not interoperate with DataWriter in previous release when using XCDR and mutable unions
        • 3.1.1.2. New requirement if you interoperate with DDS vendors that produce multiple RTPS messages in a single datagram
    • 3.2. Product-Specific Compatibility 7.5.0
      • 3.2.1. RTI Connext Core Libraries
        • 3.2.1.1. Incompatibility between Python API and other APIs when using int8 type
        • 3.2.1.2. New discovery protocol APIs for RPC and Request-Reply in Python
        • 3.2.1.3. Changed C function signatures could cause signed/unsigned warnings when compiling application code
      • 3.2.2. RTI Security Plugins
        • 3.2.2.1. Configuration Changes
        • 3.2.2.2. SDK Changes
      • 3.2.3. RTI Persistence Service
        • 3.2.3.1. Creation of Persistence Service instance using Persistence Service library will change DomainParticipantFactoryQos settings by default
        • 3.2.3.2. Errors when using Persistence Service with DataWriters from some previous releases, when Persistence Service synchronization is enabled
      • 3.2.4. RTI Connext Observability Framework
        • 3.2.4.1. Optionally disable distribution and collection of remote debugging data
  • 4. Upgrading from 7.3.0 to 7.4.0
    • 4.1. General Compatibility 7.4.0
      • 4.1.1. Wire Compatibility
        • 4.1.1.1. RTPS Versions
        • 4.1.1.2. Best-effort DataReader from before 6.1.0 cannot receive MultiChannel RTPS fragmented data from synchronous DataWriter in 7.4.0
      • 4.1.2. Transport Compatibility
        • 4.1.2.1. Real-Time WAN Transport updated message_size_max value may cause messages to be dropped from previous versions
    • 4.2. Product-Specific Compatibility 7.4.0
      • 4.2.1. RTI Connext Core Libraries
        • 4.2.1.1. Properties dds.sample_assignability.accept_unknown_enum_value and dds.sample_assignability.accept_unknown_union_discriminator have been deprecated
        • 4.2.1.2. Sample assignability default value changed in from_cdr_buffer APIs
        • 4.2.1.3. Can no longer use “DDS_” prefix with KEEP_LAST_HISTORY_QOS and KEEP_ALL_HISTORY_QOS enumeration values in XML files
        • 4.2.1.4. New discovery protocol APIs for RPC and Request-Reply in Modern C++
      • 4.2.2. RTI Security Plugins
        • 4.2.2.1. Interoperability with DomainParticipants that have a domain tag or partitions
        • 4.2.2.2. HMAC-Only mode removed from the Builtin Security Plugins
        • 4.2.2.3. Use new property in place of authentication.key_establishment_algorithm
      • 4.2.3. RTI Connext Observability Framework
  • 5. Upgrading from 6.1.2 to 7.3.0
    • 5.1. General Compatibility 7.3.0
      • 5.1.1. Wire Compatibility
        • 5.1.1.1. RTPS Versions
        • 5.1.1.2. New default RTPS checksum mechanism
    • 5.2. Product-Specific Compatibility 7.3.0
      • 5.2.1. RTI Connext Core Libraries
        • 5.2.1.1. Deprecations or Removals
        • 5.2.1.2. API Compatibility
        • 5.2.1.3. Configuration Changes
        • 5.2.1.4. Logging Changes
        • 5.2.1.5. Library Size
        • 5.2.1.6. Memory Consumption
        • 5.2.1.7. Network Performance
        • 5.2.1.8. Discovery Performance
        • 5.2.1.9. Transport Compatibility
        • 5.2.1.10. Other Changes
      • 5.2.2. Security Plugins
        • 5.2.2.1. Deprecations or Removals
        • 5.2.2.2. API Compatibility
        • 5.2.2.3. Changes to Building an Application
        • 5.2.2.4. Changes to Shipped Examples
        • 5.2.2.5. Configuration Changes
        • 5.2.2.6. Logging Changes
        • 5.2.2.7. Performance and Scalability
        • 5.2.2.8. Wire Compatibility
      • 5.2.3. RTI TLS Support
        • 5.2.3.1. OpenSSL 3.0 upgrade and 1.1.1 removal
        • 5.2.3.2. Deprecated tls.cipher.dh_param_files
        • 5.2.3.3. New OpenSSL 3 requirement on tls.cipher.cipher_list
      • 5.2.4. RTI Infrastructure Services
        • 5.2.4.1. Use <domain_participant_qos> tag instead of <participant_qos> tag to be compliant with DDS-XML specification
        • 5.2.4.2. Removals in Cloud Discovery Service
        • 5.2.4.3. Persistence Service
      • 5.2.5. RTI Tools
        • 5.2.5.1. Secure BuiltinLoggingTopic renamed to BuiltinLoggingTypeV2
      • 5.2.6. RTI System Designer
        • 5.2.6.1. XML files from 6.1.2 or earlier may not load in release 7.3.0
        • 5.2.6.2. Renamed shared_secret_algorithm to key_establishment_algorithm
      • 5.2.7. RTI Limited Bandwidth Endpoint Discovery Plugin
      • 5.2.8. RTI Connext Micro
        • 5.2.8.1. Connext Micro 3 not compatible with DDS-level fragmentation in Connext Professional 7
        • 5.2.8.2. Connext Professional DataWriter not compatible with Connext Micro/Cert DataReader under certain conditions
  • 6. Upgrading from 6.1.0 to 6.1.2
    • 6.1. General Compatibility 6.1.2
      • 6.1.1. Potential -fPIC flag issue when using static libraries in Linux and QNX if upgrading from 6.1.0
    • 6.2. Product-Specific Compatibility 6.1.2
      • 6.2.1. RTI Connext Core Libraries
        • 6.2.1.1. Removed ability to share a database connection in Persistence Service and durable writer history
        • 6.2.1.2. Upgrading Your C# Projects
        • 6.2.1.3. TopicQuery not Supported in C# API
      • 6.2.2. RTI Code Generator
        • 6.2.2.1. C# language binding introduced in 6.1.0 now used by default
      • 6.2.3. RTI System Designer
        • 6.2.3.1. Old types no longer accepted in group_data, user_data, or topic_data field
        • 6.2.3.2. XML file from 6.1.1 or above may not load in previous releases
      • 6.2.4. Security Plugins
        • 6.2.4.1. Problems checking whether a participant is allowed to exist
        • 6.2.4.2. Failure loading certificates due to missing keyCertSign when a CA has the KeyUsage X.509 V3 extension
      • 6.2.5. RTI Persistence Service
      • 6.2.6. RTI Connext Micro
        • 6.2.6.1. Connext Micro 3.0.3 installation package currently compatible only with Connext 6.0.1 installer
        • 6.2.6.2. Communication failures with reliable Connext Micro 3 or 2.4 DataReader
  • 7. Upgrading from 6.0.1 to 6.1.0
    • 7.1. General Compatibility 6.1.0
      • 7.1.1. Platforms
        • 7.1.1.1. Linking static Linux or QNX libraries with object files built with -fPIC will fail
        • 7.1.1.2. New Linux® Linker Flag
        • 7.1.1.3. Additional Build Flags for Backtrace Feature
        • 7.1.1.4. VxWorks Installation Changes
        • 7.1.1.5. VxWorks Library Name Changes
        • 7.1.1.6. Android Static Libraries no Longer Supported
      • 7.1.2. Wire Compatibility
        • 7.1.2.1. RTPS Versions
        • 7.1.2.2. Protocol Changes
        • 7.1.2.3. DataReader in previous release cannot receive MultiChannel or TopicQuery RTPS fragmented data from DataWriter in 6.1.0
      • 7.1.3. Type System Compatibility
        • 7.1.3.1. Connext applications from previous releases will not interoperate with 6.1.0 and later, for types containing optional primitive members, when data representation is XCDR2
        • 7.1.3.2. C/C++ applications may not interoperate for keyed types under certain conditions
      • 7.1.4. Transport Compatibility
        • 7.1.4.1. IP Mobility events may stop communication with applications from previous releases
      • 7.1.5. XML Compatibility
        • 7.1.5.1. Summary of XML schema changes for XML-Based Application Creation and QoS profiles
        • 7.1.5.2. Connext applications from 6.1.0 and later may fail to parse XML configuration files from previous releases if <group_data>, <user_data>, or <topic_data> tags are used
        • 7.1.5.3. Use new XML tag names <participant_qos>, <filter>, and <parameter_list>
        • 7.1.5.4. XML fields of type duration have unset tags default to 0 with a warning log message
        • 7.1.5.5. Instance replacement changes affect XML files in Micro Application Generator (MAG)
    • 7.2. Product-Specific Compatibility 6.1.0
      • 7.2.1. RTI Connext Core Libraries
        • 7.2.1.1. Configuration Changes
        • 7.2.1.2. API Changes
        • 7.2.1.3. Library Size
        • 7.2.1.4. Memory Consumption
        • 7.2.1.5. Network Performance
        • 7.2.1.6. Discovery Performance
        • 7.2.1.7. RTI Connext Micro Compatibility
        • 7.2.1.8. Miscellaneous
      • 7.2.2. RTI Code Generator
        • 7.2.2.1. -language C++03 will soon be removed
        • 7.2.2.2. -legacyPlugin option removed
        • 7.2.2.3. Modern C++ API now maps enums to enum class
        • 7.2.2.4. IDL type incompatibility: @key should no longer be set in derived structures
      • 7.2.3. RTI Connext Tools
        • 7.2.3.1. Tools won’t work on some operating systems
        • 7.2.3.2. RTI Launcher: Previous releases could propagate some environment variables on macOS systems
        • 7.2.3.3. RTI Admin Console
        • 7.2.3.4. RTI System Designer
      • 7.2.4. Security Plugins
        • 7.2.4.1. OpenSSL upgrade
        • 7.2.4.2. Target OpenSSL bundles now distributed as .rtipkg files
        • 7.2.4.3. Changed OpenSSL static library names
        • 7.2.4.4. <allow_rule> pattern partitions from previous releases may no longer work
        • 7.2.4.5. No backward interoperability if Permissions Document subject name has commas in an attribute value
        • 7.2.4.6. authentication.crl_file property has been deprecated and replaced by authentication.crl, which requires a “file:” or “data:,” prefix
        • 7.2.4.7. DomainParticipant creation will fail if either logging.distribute.enable or logging.log_file logging property is set
        • 7.2.4.8. Deprecated logging.distribute properties
        • 7.2.4.9. Old logging.distribute.queue threshold property names no longer work
        • 7.2.4.10. Changed default value of max_heartbeat_retries for secure volatile channel to UNLIMITED
        • 7.2.4.11. Improvements in Discovery Performance
      • 7.2.5. RTI Secure WAN Transport
        • 7.2.5.1. OpenSSL upgrade
        • 7.2.5.2. Changed OpenSSL static library names
      • 7.2.6. RTI TLS Support
        • 7.2.6.1. OpenSSL upgrade
        • 7.2.6.2. Changed OpenSSL static library names
        • 7.2.6.3. tls.cipher.cipher_list property has no effect when using TLS 1.3
      • 7.2.7. RTI Infrastructure Services
        • 7.2.7.1. XML Compatibility
        • 7.2.7.2. RTI Routing Service
        • 7.2.7.3. RTI Recording Service
        • 7.2.7.4. RTI Persistence Service
      • 7.2.8. RTI Connext Micro
  • 8. Upgrading from 6.0.0 to 6.0.1
    • 8.1. General Compatibility 6.0.1
      • 8.1.1. Wire Compatibility
        • 8.1.1.1. RTPS Versions
        • 8.1.1.2. Fragmentation is now independent of sample serialized size
      • 8.1.2. Type System Compatibility
        • 8.1.2.1. Wire representation of TypeObject
        • 8.1.2.2. Incompatibility issues for Java and .Net when using XCDR2
      • 8.1.3. Other Compatibility Issues
        • 8.1.3.1. Large data support for Multichannel and TopicQuery has been disabled
    • 8.2. Product-Specific Compatibility 6.0.1
      • 8.2.1. RTI Connext Core Libraries
        • 8.2.1.1. Durable Writer History properties prefix must contain “.builtin” substring
        • 8.2.1.2. Durable Writer History properties cannot be set on DomainParticipant
      • 8.2.2. RTI Code Generator
        • 8.2.2.1. Incompatibility issues for Java and .Net when using XCDR2
        • 8.2.2.2. Invalid XSD file from an IDL/XML file if input file contains a range annotation
      • 8.2.3. Security Plugins
        • 8.2.3.1. OpenSSL upgrade
        • 8.2.3.2. Changes to building an application
        • 8.2.3.3. Changes to behavior of intermediate certificates
        • 8.2.3.4. Property key_material_key now required for Secure Persistence Service
        • 8.2.3.5. Issue related to missing keyCertSign when a CA has the KeyUsage X.509 V3 extension
      • 8.2.4. RTI Secure WAN Transport
        • 8.2.4.1. OpenSSL upgrade
        • 8.2.4.2. Changes to building an application
      • 8.2.5. RTI TLS Support
        • 8.2.5.1. OpenSSL upgrade
        • 8.2.5.2. Changes to building an application
  • 9. Upgrading from 5.3.1 to 6.0.0
    • 9.1. General Compatibility 6.0.0
      • 9.1.1. Wire Compatibility
        • 9.1.1.1. RTPS Versions
        • 9.1.1.2. New default GUID generation mode
        • 9.1.1.3. Default shared memory locator has changed
        • 9.1.1.4. 4.2e alignment option deprecated
        • 9.1.1.5. Changed wire representation of TypeObject
        • 9.1.1.6. TypeCode information is not sent by default
      • 9.1.2. Reliability Protocol
        • 9.1.2.1. Changes in behavior of write() operation with KEEP_LAST configuration
      • 9.1.3. Type System Compatibility
        • 9.1.3.1. Migration to Extended CDR encoding version 2 (XCDR2)
        • 9.1.3.2. Changed wire representation of TypeObject
        • 9.1.3.3. TypeCode information is not sent by default
        • 9.1.3.4. Unbounded sequences and strings in XML type representation
        • 9.1.3.5. wchar and wstring language binding changes
        • 9.1.3.6. Properties dds.type_consistency.ignore_member_names and dds.type_consistency.ignore_sequence_bounds have been deprecated
      • 9.1.4. Transport Compatibility
        • 9.1.4.1. Default shared memory locator has changed
        • 9.1.4.2. VxWorks shared-memory transport compatibility
      • 9.1.5. XML Compatibility
        • 9.1.5.1. QoS Profile multiple inheritance
        • 9.1.5.2. XSD issues
      • 9.1.6. Other Compatibility Issues
        • 9.1.6.1. Behavior change when retrieving QoS using topic_name (when there are multiple matching QoSes)
    • 9.2. Product-Specific Compatibility 6.0.0
      • 9.2.1. RTI Connext Core Libraries
        • 9.2.1.1. APIs
        • 9.2.1.2. Generated Code
        • 9.2.1.3. QoS
        • 9.2.1.4. Library Size
        • 9.2.1.5. Memory Consumption
        • 9.2.1.6. Performance
        • 9.2.1.7. RTI Connext Micro Compatibility
      • 9.2.2. Security Plugins
        • 9.2.2.1. Configuration
        • 9.2.2.2. Wire Compatibility
        • 9.2.2.3. APIs
      • 9.2.3. RTI Secure WAN Transport
      • 9.2.4. RTI TLS Support
      • 9.2.5. RTI Ada Language Support
        • 9.2.5.1. APIs
      • 9.2.6. RTI Code Generator
        • 9.2.6.1. Removed -stl Option
        • 9.2.6.2. Removed Support for -notypecode
        • 9.2.6.3. Removed -use42eAlignment
        • 9.2.6.4. Generated code for Extended CDR Encoding Version 2 (XCDR2)
        • 9.2.6.5. Incorrect TypeCode name for member fields whose name was a keyword in Java
        • 9.2.6.6. Modified maximum length of sequences and strings when -unboundedSupport is not used, when converting to XML
        • 9.2.6.7. Traditional C++ compiled with -fno-exceptions
        • 9.2.6.8. Support for new, standard IDL, fixed-width integer types
        • 9.2.6.9. Change in default optimization level for code generation
      • 9.2.7. RTI Connext Micro
        • 9.2.7.1. Connext Compatibility
      • 9.2.8. RTI Routing Service
        • 9.2.8.1. Application Binary Interface
        • 9.2.8.2. APIs
        • 9.2.8.3. Configuration
        • 9.2.8.4. Administration and Monitoring
        • 9.2.8.5. QoS
        • 9.2.8.6. Performance
        • 9.2.8.7. Library Size
        • 9.2.8.8. Documentation
      • 9.2.9. RTI Recording Service
        • 9.2.9.1. APIs
        • 9.2.9.2. Configuration
        • 9.2.9.3. Database Format
        • 9.2.9.4. Running Recording Service 5.3.1
        • 9.2.9.5. Documentation
      • 9.2.10. RTI Persistence Service
        • 9.2.10.1. External Database Compatibility
        • 9.2.10.2. Persistent Storage (Database) Format Compatibility
        • 9.2.10.3. Persistence Storage (Database) Locking Compatibility
        • 9.2.10.4. Dynamically Linked Libraries
      • 9.2.11. RTI Database Integration Service
        • 9.2.11.1. Database Compatibility
      • 9.2.12. RTI Cloud Discovery Service
      • 9.2.13. RTI Launcher
        • 9.2.13.1. Configuration
      • 9.2.14. RTI Administration Console
        • 9.2.14.1. New Default GUID Generator Mode
        • 9.2.14.2. New GTK+ and Cairo Dependencies
        • 9.2.14.3. Connext Micro Compatibility
      • 9.2.15. RTI Monitor
      • 9.2.16. RTI Utilities
        • 9.2.16.1. Dynamically Linked Libraries
  • 10. Regressions
    • 10.1. Regressions in 7.5.0
      • 10.1.1. Core Libraries
        • 10.1.1.1. Inconsistent QoS error when setting builtin discovery channels
      • 10.1.2. Security Plugins
        • 10.1.2.1. Segmentation fault when creating and immediately deleting a DomainParticipant
      • 10.1.3. Routing Service
        • 10.1.3.1. Routing Service user library requires inclusion in correct environment variable to be loaded
      • 10.1.4. Recording Service
        • 10.1.4.1. Performance degradation when converting databases to CSV
    • 10.2. Regressions in 7.4.0
      • 10.2.1. Possible crash during Web Integration Service start-up on OS X systems
      • 10.2.2. Unable to create input/output configurations for Routing Service in System Designer
    • 10.3. Regressions in 7.3.0
      • 10.3.1. Core Libraries
        • 10.3.1.1. Duplicate network traffic captures when creating WaitSets, AsyncWaitSets, or GuardConditions
        • 10.3.1.2. Error when setting QoS on Publisher or Subscriber without endpoints
        • 10.3.1.3. Crash on DDS_DomainParticipantFactory_finalize_instance when using XML-Based Application Creation
        • 10.3.1.4. Unexpected error messages when disposing of an instance while using batching and setting serialize_key_with_dispose to TRUE
        • 10.3.1.5. RTI DDS Spy shows DDS_DataReader_get_matched_publication_participant_data error before leaking memory
        • 10.3.1.6. Misleading warning message when one non-loopback interface doesn’t support multicast
      • 10.3.2. Admin Console
        • 10.3.2.1. Discovery peer changes not consistently applied or maintained
      • 10.3.3. Routing Service
        • 10.3.3.1. Unexpected error messages when Routing Service disposes of an instance while using batching and setting serialize_key_with_dispose to TRUE
    • 10.4. Regressions in 7.2.0
      • 10.4.1. General
        • 10.4.1.1. Running scripts under $NDDSHOME/bin creates two processes
      • 10.4.2. Core Libraries
        • 10.4.2.1. Vulnerability: Potential invalid read memory access in Connext applications when subscribing to PublicationBuiltinTopicData
        • 10.4.2.2. Incorrect value of an infinite duration in non-Java APIs
        • 10.4.2.3. Sentinel constant for “invalid” Time contained unexpected value
        • 10.4.2.4. Error message printed for each filtered sample when using writer-side filtering, FlatData, and Zero Copy over shared memory
        • 10.4.2.5. RTI Monitor unable to start due to missing nddsjava.jar in rti_connext_dds-7.2.0/lib/java in LM bundles
      • 10.4.3. Code Generator
        • 10.4.3.1. Code generation fails if @verbatim annotation encountered
        • 10.4.3.2. Erroneous warning when using -enableEscapeChar
        • 10.4.3.3. Constant string defined in IDLs/XMLs may cause compilation issues if compiler set to use C++17 standard
      • 10.4.4. Security Plugins
        • 10.4.4.1. Verbosity of security-related messages is per application
        • 10.4.4.2. Memory leak when running Security Plugins SDK tester
        • 10.4.4.3. Wrong default Governance configuration for legacy Builtin Secure Logging topic
    • 10.5. Regressions in 7.1.0
      • 10.5.1. Core Libraries
        • 10.5.1.1. Possible unbounded memory growth on DataReader of keyed type after failing to match with a remote DataWriter
        • 10.5.1.2. Possible crash when creating DomainParticipants concurrently
        • 10.5.1.3. Potential bus error when calling print and to_string APIs in TypeCode
        • 10.5.1.4. Running rtisetenv_<arch>.bat caused issues in PATH environment
        • 10.5.1.5. Instance purging based on source timestamp does not work
      • 10.5.2. Code Generator
        • 10.5.2.1. Code Generator server not working as expected using relative paths with the -d option
        • 10.5.2.2. Code not stored in specified output directory on Windows when IDL was in a Symlink
        • 10.5.2.3. Command-line option tips not printed if you entered an invalid option
        • 10.5.2.4. Include flag used without a space causes Code Generator to fail
    • 10.6. Regressions in 7.0.0
      • 10.6.1. Core Libraries
        • 10.6.1.1. Memory leaks and errors when using DynamicDataReaders or FlatData DataReaders plus DDS-fragmentation and compression or encryption
        • 10.6.1.2. Some properties no longer accept LENGTH_UNLIMITED string as valid value
        • 10.6.1.3. Possible segmentation fault while enabling a DataWriter that enables batching
        • 10.6.1.4. Running out of memory during DomainParticipant creation causes DomainParticipantFactory finalization to hang
        • 10.6.1.5. Error message that is printed when failing to allocate the writer buffer pool is wrong
        • 10.6.1.6. Arbitrary read access while parsing malicious RTPS message
        • 10.6.1.7. Unexpected warning during DomainParticipant enablement when locator reachability enabled
        • 10.6.1.8. DDS fragmentation leads to more fragments than expected for a sample
        • 10.6.1.9. TCP transport won’t run with Windows debug libraries if socket_monitoring_kind is IOCP
      • 10.6.2. Security Plugins
        • 10.6.2.1. Segmentation fault in Java while enabling a DataWriter that protects payloads and enables batching
        • 10.6.2.2. Unexpected “Fragment data not supported by this writer” error when using Security
        • 10.6.2.3. Session keys not renewed as often as they should when using RTPS SIGN protection
      • 10.6.3. Persistence Service
        • 10.6.3.1. Persistence Service XSD schema broken
    • 10.7. Regressions in 6.1.1/6.1.2
      • 10.7.1. Core Libraries
        • 10.7.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
        • 10.7.1.2. Reliable DataReader may stop receiving samples from DataWriter using durable writer history and DDS fragmentation
        • 10.7.1.3. Thread names longer than 15 characters on QNX platforms cause errors in API calls
        • 10.7.1.4. Unexpected precondition error with debug libraries on a reliable DataWriter while sending a GAP
        • 10.7.1.5. Unexpected warning during discovery when multicast disabled
      • 10.7.2. Security Plugins
        • 10.7.2.1. Lack of origin authentication leads to unnecessary allocation and possible discovery failure
        • 10.7.2.2. Potential crash while decoding protected submessages
      • 10.7.3. Persistence Service
        • 10.7.3.1. Vulnerability: Stack buffer write overflow while parsing malicious environment variable on non-Windows systems
        • 10.7.3.2. Rare non-recoverable failure when acknowledging samples and committing transactions with non-zero <writer_ack_period> and <writer_checkpoint_period>
      • 10.7.4. Limited Bandwidth Plugins
        • 10.7.4.1. Limited Bandwidth ZRTPS transport crashes if an external compression library fails to load
    • 10.8. Regressions in 6.1.0
      • 10.8.1. Core Libraries
        • 10.8.1.1. Possible to create a DomainParticipant in a DomainID > 232 without getting error or warning
        • 10.8.1.2. Segmentation fault if application runs out of memory while generating a log message
        • 10.8.1.3. Possible memory leak when initializing and finalizing the DomainParticipantFactory concurrently
        • 10.8.1.4. max_samples resource limit not honored in some cases when using an unkeyed Topic and TopicQueries
        • 10.8.1.5. DomainParticipant with non-default metatraffic_transport_priority QoS does not complete discovery
        • 10.8.1.6. Broken communication when DataWriter with transport priority discovers DataReader with multicast receive address
        • 10.8.1.7. No more than 100 asynchronous publisher threads can be created
        • 10.8.1.8. Linking static Linux or QNX libraries with object files built with -fPIC will fail
        • 10.8.1.9. Invalid serialization of samples with types containing nested structures with primitive members that require padding
        • 10.8.1.10. Significant performance degradation when using MultiChannel DataWriters
        • 10.8.1.11. Significant performance regression on Windows when using OpenSSL 1.1.1 libraries in 6.1.0
        • 10.8.1.12. ReadCondition may incorrectly stay enabled after sample in READ sample state removed from the DataReader’s queue
        • 10.8.1.13. Missing SampleInfo.ReceptionTimestamp property (C# API only)
        • 10.8.1.14. Source code bundle missing critical piece of code related to UDP multicast support
        • 10.8.1.15. Significant performance regression on Windows systems when using OpenSSL 1.1.1k libraries provided in 6.1.0
        • 10.8.1.16. Support removed for ARMv8 and x64 processors, cxx and gpp compilers, for QNX platform
        • 10.8.1.17. Support removed for ARMv8 Linux architecture
      • 10.8.2. Code Generator
        • 10.8.2.1. Generated code may contain mixed line breaks
        • 10.8.2.2. @default annotation for wstring members in C++11 is not applied
        • 10.8.2.3. Java subscriber may not preserve union discriminator value, when discriminator is enum
        • 10.8.2.4. Compile-time error when using -constructor with types containing sequence of pointers
        • 10.8.2.5. Invalid serialization of samples with types containing nested structures with primitive members that require padding
        • 10.8.2.6. Invalid code generated for unions in C++98
      • 10.8.3. Admin Console
        • 10.8.3.1. High CPU usage by Admin Console
        • 10.8.3.2. Admin Console does not correctly delete Publisher and Subscriber entities
      • 10.8.4. TLS Support
        • 10.8.4.1. hello_world_tcp example root and intermediate CAs expire too early
        • 10.8.4.2. Significant performance regression on Windows when using OpenSSL 1.1.1 libraries in 6.1.0
      • 10.8.5. Security Plugins
        • 10.8.5.1. Significant performance regression on Windows when using OpenSSL 1.1.1 libraries in 6.1.0
        • 10.8.5.2. use_530_partitions incorrectly allowed any non-empty partitions
        • 10.8.5.3. Permissions document incorrectly disallows unescaped special characters in a subject name
      • 10.8.6. Routing Service
        • 10.8.6.1. Routing Service Socket Adapter example does not properly resolve hostname
        • 10.8.6.2. Crash in Routing Service executable when providing the same -Dname=value pair twice
      • 10.8.7. Recording Service
        • 10.8.7.1. <content_filter> tags do not work for Topic groups
        • 10.8.7.2. Exception reported when recording or replaying type registered as a union
        • 10.8.7.3. Replay Service’s Monitoring ServicePeriodic topic shows wrong timestamp
      • 10.8.8. Cloud Discovery Service
        • 10.8.8.1. Restricting domains using command-line arguments requires use of both -allowDomain and -denyDomain arguments
    • 10.9. Regressions in 6.0.1
      • 10.9.1. Core Libraries
        • 10.9.1.1. Samples lost if multiple readers created in same locator and push_on_write is set to false
        • 10.9.1.2. XML parser crashes from infinite recursion when XML QoS configuration contains inheritance loop
        • 10.9.1.3. Possible issues with communication and enabling DomainParticipant on Windows systems if network interface has multiple IP addresses
        • 10.9.1.4. Failure to allocate memory larger than 2 GB
      • 10.9.2. Routing Service
        • 10.9.2.1. Fourth digit of product version not logged at startup
      • 10.9.3. Recording Service
        • 10.9.3.1. Crash if monitoring enabled and TopicGroup matches with Topic name containing ‘/’ character
      • 10.9.4. Prototyper
        • 10.9.4.1. Prototyper broken in 6.0.1
      • 10.9.5. Security Plugins
        • 10.9.5.1. Properties “com.rti.serv.secure.license_string” and “com.rti.serv.secure.license_file” not validated properly
        • 10.9.5.2. Using properties “dds.license.license_string” or “dds.license.license_file” leads to DomainParticipant creation failure
    • 10.10. Regressions in 6.0.0
      • 10.10.1. Core Libraries
        • 10.10.1.1. Non-Java register_type fails if the maximum size is greater than 2 GB
        • 10.10.1.2. XCDR serialization of a mutable union with an unknown discriminator value is not compliant with OMG specification
        • 10.10.1.3. Participant may receive RTPS traffic over SHMEM transport not intended for participant
        • 10.10.1.4. Instance handling on a DataReader and filtering operations in ContentFilteredTopics, QueryConditions, TopicQueries, and Multi-Channel DataWriters may fail
        • 10.10.1.5. Creating DynamicDataTypePlugin with TypeCode from discovery and using content filtering causes segmentation fault
        • 10.10.1.6. Crash with NULL listeners and non-none status masks in C applications that mix types with and without Zero Copy
        • 10.10.1.7. Application using Monitoring Libraries produces segmentation fault during DataReader creation
        • 10.10.1.8. Continuous creation of TopicQueries may lead to unnecessary memory fragmentation in OS memory allocator
        • 10.10.1.9. Unbounded memory growth in Spy when discovering multiple endpoints with the same Topics and types
        • 10.10.1.10. Types Containing Typedefs sent without the typedefs in discovery when using DynamicData
        • 10.10.1.11. XSD issue: order enforced in <publisher> tag
        • 10.10.1.12. Invalid key deserialization for mutable derived types with key members
        • 10.10.1.13. Malformed samples with invalid strings not dropped by DataReader in C, traditional C++, and modern C++
        • 10.10.1.14. VxWorks kernel mode shared memory doesn’t work after restarting an application
        • 10.10.1.15. Serialization of string members does not check for null-terminated strings in C, traditional C++, and modern C++
        • 10.10.1.16. Discovery issues when reusing shared memory segments
        • 10.10.1.17. Unexpected log message when calling DataWriter::get_matched_subscription_data or DataReader::get_matched_publication_data on unmatched endpoints
        • 10.10.1.18. XSD issues
        • 10.10.1.19. Dynamic Data issues
        • 10.10.1.20. Discovery does not complete, and there is no error
        • 10.10.1.21. Crash when deserialized_type_object_dynamic_allocation_threshold set to 0
        • 10.10.1.22. Wrong return code for DDS::DataWriter::get_matched_subscription_data and DDS::DataReader::get_matched_publication_data
        • 10.10.1.23. DataReader reports incorrect sample lost and rejected when receiving coherent set
        • 10.10.1.24. QoS policies not resolved to correct values
      • 10.10.2. Security Plugins
        • 10.10.2.1. Discovery time scales poorly
        • 10.10.2.2. Possible lack of SUBSCRIPTION_MATCHED_STATUS if a DataWriter loses liveliness with the DataReader
        • 10.10.2.3. Applications directly calling OpenSSL APIs after DomainParticipant deletion may crash
        • 10.10.2.4. DataWriter does not report PUBLICATION_MATCHED_STATUS for DataReaders that are inactive when it receives their key material
      • 10.10.3. Code Generator
        • 10.10.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
        • 10.10.3.2. -d64 flag missing in generated Java makefile for Red Hat Enterprise Linux 8.0
        • 10.10.3.3. Invalid key deserialization for mutable derived types with key members
        • 10.10.3.4. Malformed samples with invalid strings not dropped by DataReader in C, traditional C++, and modern C++
        • 10.10.3.5. Invalid serialization of samples with types containing primitive members that require padding
        • 10.10.3.6. Java exception during serialization/deserialization of keyed types whose key is an unkeyed nested type with unbounded members
        • 10.10.3.7. Incorrect deserialization in .Net of samples from certain types when published from a writer with disable_inline_keyhash set to true
        • 10.10.3.8. Generated code in traditional C++ with namespaces for an IDL containing a nested module called “rti” will not compile
      • 10.10.4. Persistence Service
        • 10.10.4.1. RTICdrTypeCodeUtils_type_has_external_members:!get member error when running Persistence Service
      • 10.10.5. Routing Service
        • 10.10.5.1. Vulnerability: Potential stack corruption in Routing Service when using malicious XML configuration document
        • 10.10.5.2. Unbounded memory growth when restarting Service or creating/deleting DomainRoutes
        • 10.10.5.3. Large per-sample memory usage in Routing Service
        • 10.10.5.4. Routing Service remote shell: Adding to initial peers list does not work, possible segmentation fault
        • 10.10.5.5. Incorrect content filtering and “RTICdrTypeCodeUtils_type_has_external_members:!get member” error
        • 10.10.5.6. Create method in Service API fails to parse XML snippets that start with ‘str://’
        • 10.10.5.7. Memory leak if malformed configuration file prevents Routing Service creation
        • 10.10.5.8. Executable ignores logging QoS
      • 10.10.6. Recording Service
        • 10.10.6.1. Segmentation fault after discovering application that uses UserData QoS Policy
        • 10.10.6.2. Executable does not log build ID for DDS libraries
        • 10.10.6.3. Legacy deserialized database table cannot be replayed or converted if it contains compact byte sequences or arrays
        • 10.10.6.4. Segmentation fault in Replay Service or Converter if recorded topics have “::” in their names
      • 10.10.7. Cloud Discovery Service
        • 10.10.7.1. Cloud Discovery Service executable does not log build ID for DDS libraries
      • 10.10.8. Queuing Service
        • 10.10.8.1. RTICdrTypeCodeUtils_type_has_external_members:!get member error when running Queuing Service
  • 11. Changes to This Document
  • Copyrights and Notices
RTI Connext Migration Guide
  • 6. Upgrading from 6.1.0 to 6.1.2
  • 6.2. Product-Specific Compatibility 6.1.2
  • View page source

6.2. Product-Specific Compatibility 6.1.2

After addressing migration issues in Section 6.1, address Core Libraries issues in Section 6.2.1. Then review and address the rest of the product-specific migration issues in this section for Release 6.1.1 or 6.1.2.

Upgrade considerations are the same whether you are upgrading to 6.1.1 or 6.1.2. There are no additional upgrade considerations between 6.1.1 and 6.1.2.

  • 6.2.1. RTI Connext Core Libraries
    • 6.2.1.1. Removed ability to share a database connection in Persistence Service and durable writer history
    • 6.2.1.2. Upgrading Your C# Projects
    • 6.2.1.3. TopicQuery not Supported in C# API
  • 6.2.2. RTI Code Generator
    • 6.2.2.1. C# language binding introduced in 6.1.0 now used by default
  • 6.2.3. RTI System Designer
    • 6.2.3.1. Old types no longer accepted in group_data, user_data, or topic_data field
    • 6.2.3.2. XML file from 6.1.1 or above may not load in previous releases
  • 6.2.4. Security Plugins
    • 6.2.4.1. Problems checking whether a participant is allowed to exist
    • 6.2.4.2. Failure loading certificates due to missing keyCertSign when a CA has the KeyUsage X.509 V3 extension
  • 6.2.5. RTI Persistence Service
  • 6.2.6. RTI Connext Micro
    • 6.2.6.1. Connext Micro 3.0.3 installation package currently compatible only with Connext 6.0.1 installer
    • 6.2.6.2. Communication failures with reliable Connext Micro 3 or 2.4 DataReader
Previous Next

© Copyright 2019-2025, Real-Time Innovations, Inc.

Built with Sphinx using a theme provided by Read the Docs.

Send feedback about this document to documentation@rti.com.