RTI Connext Migration Guide
6.1.0
1. Upgrade Overview
1.1. Upgrade Path
1.2. Upgrade Steps
1.3. Regenerating and Recompiling
1.3.1. Generated code compatibility
1.3.2. Application Binary Interface
2. Upgrading from 6.0.1 to 6.1.0
2.1. General Compatibility 6.1.0
2.1.1. Platforms
2.1.1.1. New and Removed Platforms
2.1.1.2. New Linux® Linker Flag
2.1.1.3. Additional Build Flags for Backtrace Feature
2.1.1.4. VxWorks Installation Changes
2.1.1.5. VxWorks Library Name Changes
2.1.2. Wire Compatibility
2.1.2.1. RTPS Versions
2.1.2.2. Protocol Changes
2.1.2.3.
DataReader
in previous release cannot receive MultiChannel or TopicQuery RTPS fragmented data from
DataWriter
in 6.1.0
2.1.3. Type System Compatibility
2.1.3.1. Connext DDS applications from previous releases will not interoperate with 6.1.0 and later, for types containing optional primitive members, when data representation is XCDR2
2.1.3.2. C/C++ applications may not interoperate for keyed types under certain conditions
2.1.4. Transport Compatibility
2.1.4.1. IP Mobility events may stop communication with applications from previous releases
2.1.5. XML Compatibility
2.1.5.1. Summary of XML schema changes for XML-based application creation and QoS profiles
2.1.5.2.
Connext DDS
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
2.1.5.3. Use new XML tag names <participant_qos>, <filter>, and <parameter_list>
2.1.5.4. XML fields of type duration have unset tags default to 0 with a warning log message
2.1.5.5. Instance replacement changes affect XML files in Micro Application Generator (MAG)
2.2. Product-Specific Compatibility 6.1.0
2.2.1. RTI Connext DDS Core Libraries
2.2.1.1. Configuration Changes
2.2.1.2. API Changes
2.2.1.3. Library Size
2.2.1.4. Memory Consumption
2.2.1.5. Network Performance
2.2.1.6. Discovery Performance
2.2.1.7. RTI Connext DDS Micro Compatibility
2.2.1.8. Miscellaneous
2.2.2. RTI Code Generator
2.2.2.1. -language C++03 will soon be removed
2.2.2.2. -legacyPlugin option removed
2.2.2.3. Modern C++ API now maps enums to enum class
2.2.2.4. IDL type incompatibility: @key should no longer be set in derived structures
2.2.3. RTI Connext Tools
2.2.3.1. Tools won’t work on some operating systems
2.2.3.2. RTI Launcher: Previous releases could propagate some environment variables on macOS systems
2.2.3.3. RTI Admin Console
2.2.3.4. RTI System Designer
2.2.4. RTI Security Plugins
2.2.4.1. OpenSSL upgrade
2.2.4.2. Target OpenSSL bundles now distributed as .rtipkg files
2.2.4.3. Changed OpenSSL static library names
2.2.4.4. <allow_rule> pattern partitions from previous releases may no longer work
2.2.4.5. No backward interoperability if Permissions Document subject name has commas in an attribute value
2.2.4.6. authentication.crl_file property has been deprecated and replaced by authentication.crl, which requires a “file:” or “data:,” prefix
2.2.4.7.
DomainParticipant
creation will fail if either logging.distribute.enable or logging.log_file logging property is set
2.2.4.8. Deprecated logging.distribute properties
2.2.4.9. Old logging.distribute.queue threshold property names no longer work
2.2.4.10. Changed default value of max_heartbeat_retries for secure volatile channel to UNLIMITED
2.2.4.11. Improvements in Discovery Performance
2.2.5. RTI Secure WAN Transport
2.2.5.1. OpenSSL upgrade
2.2.5.2. Changed OpenSSL static library names
2.2.6. RTI TLS Support
2.2.6.1. OpenSSL upgrade
2.2.6.2. Changed OpenSSL static library names
2.2.6.3. tls.cipher.cipher_list property has no effect when using TLS 1.3
2.2.7. RTI Infrastructure Services
2.2.7.1. RTI Routing Service
2.2.7.2. RTI Recording Service
2.2.7.3. RTI Persistence Service
2.2.8. RTI Connext DDS Micro
3. Upgrading from 6.0.0 to 6.0.1
3.1. General Compatibility 6.0.1
3.1.1. Platforms
3.1.2. Wire Changes and Compatibility
3.1.2.1. RTPS Versions
3.1.2.2. Fragmentation is now independent of sample serialized size
3.1.3. Type System Compatibility
3.1.3.1. Wire representation of TypeObject
3.1.3.2. Incompatibility issues for Java and .Net when using XCDR2
3.1.4. Other Compatibility Issues
3.1.4.1. Large data support for Multichannel and TopicQuery has been disabled
3.2. Product-Specific Compatibility 6.0.1
3.2.1. RTI Connext DDS Core Libraries
3.2.2. RTI Code Generator
3.2.2.1. Incompatibility issues for Java and .Net when using XCDR2
3.2.2.2. Invalid XSD file from an IDL/XML file if input file contains a range annotation
3.2.3. RTI Connext DDS Micro
3.2.4. RTI Security Plugins
3.2.4.1. OpenSSL upgrade
3.2.4.2. Changes to building an application
3.2.4.3. Changes to behavior of intermediate certificates
3.2.4.4. Property key_material_key now required for Secure Persistence Service
3.2.5. RTI Secure WAN Transport
3.2.5.1. OpenSSL upgrade
3.2.5.2. Changes to building an application
3.2.6. RTI TLS Support
3.2.6.1. OpenSSL upgrade
3.2.6.2. Changes to building an application
4. Upgrading from 5.3.1 to 6.0.0
4.1. General Compatibility 6.0.0
4.1.1. Platforms
4.1.2. Wire Compatibility
4.1.2.1. RTPS Versions
4.1.2.2. New default GUID generation mode
4.1.2.3. Default shared memory locator has changed
4.1.2.4. 4.2e alignment option deprecated
4.1.2.5. Changed wire representation of TypeObject
4.1.2.6. TypeCode information is not sent by default
4.1.3. Reliability Protocol
4.1.3.1. Changes in behavior of write() operation with KEEP_LAST configuration
4.1.4. Type System Compatibility
4.1.4.1. Migration to Extended CDR encoding version 2 (XCDR2)
4.1.4.2. Changed wire representation of TypeObject
4.1.4.3. TypeCode information is not sent by default
4.1.4.4. Unbounded sequences and strings in XML type representation
4.1.4.5. wchar and wstring language binding changes
4.1.4.6. Properties dds.type_consistency.ignore_member_names and dds.type_consistency.ignore_sequence_bounds have been deprecated
4.1.5. Transport Compatibility
4.1.5.1. Default shared memory locator has changed
4.1.5.2. VxWorks shared-memory transport compatibility
4.1.6. XML Compatibility
4.1.6.1. QoS Profile multiple inheritance
4.1.6.2. XSD issues
4.1.7. Other Compatibility Issues
4.1.7.1. Behavior change when retrieving QoS using topic_name (when there are multiple matching QoSes)
4.2. Product-Specific Compatibility 6.0.0
4.2.1. RTI Connext DDS Core Libraries
4.2.1.1. APIs
4.2.1.2. Generated Code
4.2.1.3. QoS
4.2.1.4. Library Size
4.2.1.5. Memory Consumption
4.2.1.6. Performance
4.2.1.7. RTI Connext DDS Micro Compatibility
4.2.2. RTI Security Plugins
4.2.2.1. Configuration
4.2.2.2. Wire Compatibility
4.2.2.3. APIs
4.2.3. RTI Secure WAN Transport
4.2.4. RTI TLS Support
4.2.5. RTI Ada Language Support
4.2.5.1. APIs
4.2.6. RTI Code Generator
4.2.6.1. Removed -stl Option
4.2.6.2. Removed Support for -notypecode
4.2.6.3. Removed -use42eAlignment
4.2.6.4. Generated code for Extended CDR Encoding Version 2 (XCDR2)
4.2.6.5. Incorrect TypeCode name for member fields whose name was a keyword in Java
4.2.6.6. Modified maximum length of sequences and strings when -unboundedSupport is not used, when converting to XML
4.2.6.7. Traditional C++ compiled with -fno-exceptions
4.2.6.8. Support for new, standard IDL, fixed-width integer types
4.2.6.9. Change in default optimization level for code generation
4.2.7. RTI Connext DDS Micro
4.2.7.1. New Installation Procedure
4.2.7.2. Change In Documentation
4.2.7.3. Application Binary Interface
4.2.7.4. APIs
4.2.7.5. Connext DDS Compatibility
4.2.8. RTI Routing Service
4.2.8.1. Application Binary Interface
4.2.8.2. APIs
4.2.8.3. Configuration
4.2.8.4. Administration and Monitoring
4.2.8.5. QoS
4.2.8.6. Performance
4.2.8.7. Library Size
4.2.8.8. Documentation
4.2.9. RTI Recording Service
4.2.9.1. APIs
4.2.9.2. Configuration
4.2.9.3. Database Format
4.2.9.4. Running Recording Service 5.3.1
4.2.9.5. Documentation
4.2.10. RTI Persistence Service
4.2.10.1. External Database Compatibility
4.2.10.2. Persistent Storage (Database) Format Compatibility
4.2.10.3. Persistence Storage (Database) Locking Compatibility
4.2.10.4. Dynamically Linked Libraries
4.2.11. RTI Database Integration Service
4.2.11.1. Database Compatibility
4.2.12. RTI Cloud Discovery Service
4.2.13. RTI Launcher
4.2.13.1. Configuration
4.2.14. RTI Administration Console
4.2.14.1. New Default GUID Generator Mode
4.2.14.2. New GTK+ and Cairo Dependencies
4.2.14.3. Connext DDS Micro Compatibility
4.2.15. RTI Monitor
4.2.16. RTI Utilities
4.2.16.1. Dynamically Linked Libraries
5. Regressions
5.1. Regressions in 6.1.0
5.1.1. Core Libraries
5.1.1.1. XSD Issue: order enforced in <publisher> tag
5.1.1.2. Memory leak modifying flow_controller_name or filter_name QoS programmatically with DDS_String_dup
5.1.1.3. Samples lost if multiple readers were created in same locator and push_on_write was set to false
5.1.1.4. XML parser crashed from infinite recursion when XML QoS configuration contained inheritance loop
5.1.1.5. Invalid serialization of samples with types containing nested structures with primitive members that require padding
5.1.1.6. Significant performance degradation when using MultiChannel DataWriters
5.1.2. RTI Code Generator
5.1.2.1. Change in behavior in C and traditional C++ for bounded sequences under certain conditions
5.1.2.2. Invalid serialization of samples with types containing nested structures with primitive members that require padding
5.1.3. RTI TLS Support
5.1.3.1. hello_world_tcp example root and intermediate CAs expire too early
5.1.4. RTI Security Plugins
5.1.4.1. Performance regression on Windows when using OpenSSL 1.1.1 libraries in 6.1.0
5.1.4.2. Permissions document incorrectly disallowed unescaped special characters in a subject name
5.1.5. RTI Routing Service
5.1.5.1. Crash in Routing Service executable when providing the same -Dname=value pair twice
5.2. Regressions in 6.0.1
5.2.1. Core Libraries
5.2.1.1. XSD Issue: order enforced in <publisher> tag
5.2.1.2. Memory leak modifying flow_controller_name or filter_name QoS programmatically with DDS_String_dup
5.2.1.3. Samples lost if multiple readers were created in same locator and push_on_write was set to false
5.2.1.4. XML parser crashed from infinite recursion when XML QoS configuration contained inheritance loop
5.2.1.5. Fixed in 6.1.0
5.2.2. RTI Code Generator
5.2.2.1. Change in behavior in C and traditional C++ for bounded sequences under certain conditions
5.2.3. RTI Routing Service
5.2.3.1. Fixed in 6.1.0
5.2.4. RTI Recording Service
5.2.4.1. Fixed in 6.1.0
5.2.5. RTI Prototyper
5.2.5.1. Fixed in 6.1.0
5.3. Regressions in 6.0.0
5.3.1. RTI Connext DDS Core Libraries
5.3.1.1. XSD issue: order enforced in <publisher> tag
5.3.1.2. Memory leak modifying flow_controller_name or filter_name QoS programmatically with DDS_String_dup
5.3.1.3. Fixed in 6.1.0
5.3.1.4. Fixed in 6.0.1
5.3.2. RTI Security Plugins
5.3.2.1. Fixed in 6.0.1
5.3.3. RTI Code Generator
5.3.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
5.3.3.2. Fixed in 6.0.1
5.3.4. RTI Routing Service
5.3.4.1. Fixed in 6.1.0
5.3.4.2. Fixed in 6.0.1
5.3.5. RTI Recording Service
5.3.5.1. Fixed in 6.0.1
5.3.6. RTI Cloud Discovery Service
5.3.6.1. Fixed in 6.0.1
6. Changes to This Document
7. Copyrights
RTI Connext Migration Guide
Docs
»
4.
Upgrading from 5.3.1 to 6.0.0
»
4.2.
Product-Specific Compatibility 6.0.0
»
4.2.12.
RTI Cloud Discovery Service
View page source
4.2.12.
RTI Cloud Discovery Service
¶
See
Section 5.3.6
for regressions related to
Cloud Discovery Service
in release 6.0.0.