Why do I see MIGGeneratorSample_setParameterLength() errors with RTI Data Distribution Service 4.1f?
Note: Applies to RTI Data Distribution Service 4.1f.
MIGGeneratorSample_setParameterLength()
error messages are caused by a bug when RTPS GAP messages are NACKed by a reliable reader. This error can result in memory corruption.
DataWriters issue RTPS GAP messages to indicate that samples are no longer relevant to the readers. A GAP message can occur in several scenarios. For example, it can occur when the History QoS is set to KEEP_LAST and you are writing multiple instances that exceed the configured History depth. It can also occur when History is KEEP_ALL, Durability is TRANSIENT_LOCAL and you are writing multiple instances that exceed the max_samples_per_instance
limit in the ResourceLimits QosPolicy.
The workaround to this problem is to set max_nack_response_delay
to 0 (DDS_DataWriterQos.protocol.rtps_reliable_writer.max_nack_response_delay
). Note that the default for non-discovery data is 0.2 seconds.