You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The history-depth tag configures the history depth of the Fast DDS internal entities. By default, the depth of every RTPS History instance is 5000, which sets a constraint on the maximum number of samples a DDS Recorder instance can deliver to late joiner Readers configured with TRANSIENT_LOCAL DurabilityQosPolicyKind. Its value should be decreased when the sample size and/or number of created endpoints (increasing with the number of topics) are big enough to cause memory exhaustion issues. If enough memory is available, however, the history-depth could be increased to deliver a greater number of samples to late joiners.
In the same time, what it actually does (at least in DDS-Record-Replay v0.4.0 with Fast-DDS v2.14.2, no dynamic types in mcap) is it sets the maximum number of messages per mcap channel (i.e. DDS topic) it ever sends (even if appropriate topic subscribers were alive by the time ddsreplayer was started). It's very easy to reproduce:
Store the following contents as reproduce_issue.yaml:
dds:
topics:
- name: "*"
qos:
history-depth: 1
Run ddsreplayer -c reproduce_issue.yaml -i <whatever_mcap_file>
See (f.e. in Fast-DDS Monitor) that each of the topics stored in the mcap got just a single message each. If you increase the value of history-depth it sends it as many times as you specified.
By default it stops sending any messages after 5000 messages in each topic.
The text was updated successfully, but these errors were encountered:
iurii-provizio
changed the title
Incorrect usage of dds:topics:qos:history-depth parameter
Incorrect usage of dds:topics:qos:history-depth parameter by ddsreplayer
Aug 9, 2024
Hi @iurii-provizio , thank you for reporting this issue. As a matter of fact the same problem was already reported in the DDS-Router repository (eProsima/DDS-Router#458), as it affects the base both products have in common (DDS-Pipe). The fix was already merged into main branch and will be available in the upcoming release.
Dear eProsima,
The
history-depth
config parameter (with default value of 5000) seems to behave not the way it's supposed to be. The designated meaning of this parameter is:In the same time, what it actually does (at least in DDS-Record-Replay v0.4.0 with Fast-DDS v2.14.2, no dynamic types in mcap) is it sets the maximum number of messages per mcap channel (i.e. DDS topic) it ever sends (even if appropriate topic subscribers were alive by the time ddsreplayer was started). It's very easy to reproduce:
reproduce_issue.yaml
:ddsreplayer -c reproduce_issue.yaml -i <whatever_mcap_file>
history-depth
it sends it as many times as you specified.By default it stops sending any messages after 5000 messages in each topic.
The text was updated successfully, but these errors were encountered: