5.5. Dynamic Participant Renewal, Revocation, and Expiration

5.5.1. [Critical] Loss of data when banishing more than 16,777,208 times*

Consider the following scenario:

  • The DomainParticipantQos property dds.participant.trust_plugins.key_revision_max_history_depth is set to a value other than 0.

  • The Governance Rule <data_protection_kind> is set to a value other than NONE for a given topic.

  • A given DomainParticipant banishes participants (e.g., by calling the API function banish_ignored_participants) more than 16,777,208 times but less than 16,777,215 times.

  • A DataWriter of the given topic within this DomainParticipant has historical samples in its queue that were written using much older revisions.

  • A DataReader of the given topic joins late and tries to receive these historical samples.

When this scenario occurred in previous releases, the DataReader would fail to get these historical samples. This log message accompanied this failure:

PRESReaderQueueSecurity_decode:FAILED TO DECODE | Incoming serialized data.

[RTI Issue ID SEC-2613]



* This bug did not affect you if you are upgrading from 6.1.x or earlier.