What causes this error: "NDDS_Transport_UDPv4_receive_rEA:!precondition: buffer_in->length < (self)->property->message_size_max"

The following error:

NDDS_Transport_UDPv4_receive_rEA:!precondition: buffer_in->length < (self)->property->message_size_max

is caused when the buffer size of the Receiver Pool is less than the message_size_max of a builtin transport (UDPv4 in this case).

To fix this issue, all you need to do is set the buffer size in the Receiver Pool QoS to a value greater than or equal to message_size_max. For example, if message_size_max is set to 65530, the Receiver Pool's buffer size must be set to, at least, 65530.

<participant_qos>
        ... 
    <receiver_pool>
        <buffer_size>65530</buffer_size>
    </receiver_pool>
        ... 
</participant_qos>