.. include:: /../getting_started/vars.rst .. _section-Regressions730: Regressions in 7.3.0 ******************** The following regressions were introduced in *Connext* 7.3.0. Core Libraries ============== Error when setting QoS on Publisher or Subscriber without endpoints ------------------------------------------------------------------- When changing the Partition QoS Policy of *Publishers* or *Subscribers* without endpoints (*DataWriters* or *DataReaders*), the operation can unexpectedly fail and log this error: .. code-block:: text FAILURE | Notify of group or partition change. The likelihood of running into this issue increases with the number of *Publishers* or *Subscribers* created by your application. **Fixed in:** 7.5.0 [RTI Issue ID CORE-15322] .. _CORE-14912: Crash on DDS_DomainParticipantFactory_finalize_instance when using XML-Based Application Creation ------------------------------------------------------------------------------------------------- When using XML-Based Application Creation with multiple registered types, ``DDS_DomainParticipantFactory_finalize_instance`` could crash the JVM. **Fixed in:** 7.4.0 [RTI Issue ID CORE-14912] .. _CORE-15528: Unexpected error messages when disposing of an instance while using batching and setting serialize_key_with_dispose to TRUE --------------------------------------------------------------------------------------------------------------------------- Consider the following |DW| QoS: .. code-block:: xml true true The data type is keyed, and the serialized key is not aligned to a 4-byte boundary. Imagine that DataWriter1 registers an instance, and then DataWriter2 uses the resulting InstanceHandle to write and dispose that instance. DataWriter2 successfully sends one batch with a data sample of a given instance and then attempts to send another batch whose first sample is a dispose message for that same instance. When using release libraries, DataWriter2 will successfully send the second batch, but the |DR| that is reading the batch from DataWriter2 will experience this error: .. code-block:: text ERROR MIGInterpreter_parse:submessage not aligned to 4 When using debug libraries, DataWriter2 will fail to send the batch and will generate this error: .. code-block:: text mig.2.0/srcC/generator/Generator.c:1216:RTI0x200003a:!precondition: "!(sample != ((void *)0) && (((sample)->serializedData[encapsulationIndex].serializedData.pointer == ((void *)0) || ((sample)->serializedData[encapsulationIndex].serializedData.length & 0x3) == 0)) && (((sample)->protocolParameters.pointer == ((void *)0) || ((sample)->protocolParameters.length & 0x3) == 0))) After fixing this problem, DataWriter2 will successfully send the batch, and the |DR| will successfully receive the batch when using either release or debug libraries. **Not fixed yet** [RTI Issue ID CORE-15528] Routing Service =============== .. _ROUTING-1288: Unexpected error messages when Routing Service disposes of an instance while using batching and setting serialize_key_with_dispose to TRUE ------------------------------------------------------------------------------------------------------------------------------------------ Consider the following |ROUTINGSERVICE| writer QoS: .. code-block:: xml true true The data type is keyed, and the serialized key is not aligned to a 4-byte boundary. Imagine that |ROUTINGSERVICE| successfully sends one batch with a data sample of a given instance and then attempts to send another batch whose first sample is a dispose message for that same instance. When using release libraries, |ROUTINGSERVICE| will successfully send the second batch, but the |DR| that is reading the batch from |ROUTINGSERVICE| will experience this error: .. code-block:: text ERROR MIGInterpreter_parse:submessage not aligned to 4 When using debug libraries, |ROUTINGSERVICE| will fail to send the batch and will generate this error: .. code-block:: text mig.2.0/srcC/generator/Generator.c:1216:RTI0x200003a:!precondition: "!(sample != ((void *)0) && (((sample)->serializedData[encapsulationIndex].serializedData.pointer == ((void *)0) || ((sample)->serializedData[encapsulationIndex].serializedData.length & 0x3) == 0)) && (((sample)->protocolParameters.pointer == ((void *)0) || ((sample)->protocolParameters.length & 0x3) == 0))) After fixing this problem, |ROUTINGSERVICE| will successfully send the batch, and the |DR| will successfully receive the batch when using either release or debug libraries. **Not fixed yet** [RTI Issue ID ROUTING-1288]