5.4.1. Discovery

5.4.1.1. [Critical] Undefined behavior when serializing using any of the builtin discovery plugins

There was undefined behavior when serializing using any of the builtin discovery plugins. This issue could lead to crashes or memory corruption.

[RTI Issue ID CORE-15454]

5.4.1.2. [Critical] Incorrect locators used on newly created DataWriters or DataReaders after a Locator Reachability event

When creating a DataWriter or DataReader, the locators to be used for communication may be inherited from a local DomainParticipant’s knowledge of the remote DomainParticipant. If a Locator Reachability event occurred before they were created, the DataWriter or DataReader might have attempted to use non-reachable locators.

[RTI Issue ID CORE-15390]

5.4.1.3. [Major] DomainParticipants using SPDP2 and fragmentation of the participant configuration messages failed to complete discovery

DomainParticipants using SPDP2 and fragmentation of the configuration messages (that is, the participant configuration message was larger than the message_size_max) failed to complete discovery, and the following warning was logged:

WARNING [PARSE MESSAGE|0x0101D6D6,0xC6933A70,0x66CB2656:0x00010187{Entity=DR,MessageKind=DATA_FRAG}|RECEIVE FROM 0x0101D332,0x6CC2F8A4,0x43BA1F0C:0x00010182] COMMENDSrReaderService_onSubmessage:!support fragments. Message dropped.

Now DomainParticipants using SPDP2 can use fragmentation of the configuration messages.

[RTI Issue ID CORE-15257]

5.4.1.4. [Major] DomainParticipants failed to announce that endpoint was not reachable when internal clock was monotonic and external clock was real-time

DomainParticipants failed to announce to remote participants that an endpoint was not reachable at a locator when the internal clock was monotonic and the external clock was real-time.

[RTI Issue ID CORE-15366]

5.4.1.5. [Minor] DomainParticipants using LBED unregistered remote DataWriters when a remote participant was deleted instead of deleting them

DomainParticipants using LBED (and any participant discovery protocol) did not correctly remove remote DataWriters when a remote participant was deleted, but instead unregistered the remote DataWriters. This resulted in a NOT_ALIVE_NO_WRITERS sample on the builtin publication reader, rather than the expected DISPOSE sample. This did not result in a memory leak when using SPDP or SPDP2, since the remote DataWriters were then removed by the participant discovery plugin.

Remote DataWriters are now correctly removed when using LBED, and a DISPOSE sample is received on the builtin publication reader.

[RTI Issue ID CORE-15101]