-
Notifications
You must be signed in to change notification settings - Fork 817
[20401] Check History QoS inconsistencies #4375
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
cc41acc
to
de48e71
Compare
Signed-off-by: JesusPoderoso <[email protected]>
Signed-off-by: JesusPoderoso <[email protected]>
…le_per_instance bounds Signed-off-by: JesusPoderoso <[email protected]>
de48e71
to
3880375
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Changes makes sense to me and added tests assert the intended behavior.
Nonetheless there are a bunch of tests that needs to be fixed, mostly as a consequence of the consistency check between the max_samples_per_instance
and history depth
when KEEP_LAST
.
For instance, the DDSDataWriter.HeartbeatWhileDestruction
test would require setting the max_samples_per_instance
datawriter qos to n_samples
(1000) so that max_samples_per_instance >= history.depth
In addition, it would be necessary to specify in the docs/doxygen that KEEP LAST with 0 is an inconsistency |
Signed-off-by: JesusPoderoso <[email protected]>
Signed-off-by: JesusPoderoso <[email protected]>
@richiprosima please test this |
@richiprosima please test mac |
@richiprosima please test windows |
@richiprosima please test mac |
I've launched a documentation CI manual run with the latest doc PR updates. |
@richiprosima please test mac |
CI issues unrelated to the PR. Ready to merge! |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
@Mergifyio backport 2.12.x 2.10.x 2.6.x |
✅ Backports have been created
|
* Refs #20401: Add regression test Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Check History QoS inconsistencies Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Check also the history depth vs resource limits max_sample_per_instance bounds Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Update HeartbeatWhileDestruction test Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Update unit test DDS profiles XML tests profile Signed-off-by: JesusPoderoso <[email protected]> --------- Signed-off-by: JesusPoderoso <[email protected]> (cherry picked from commit 68acb5a)
* Refs #20401: Add regression test Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Check History QoS inconsistencies Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Check also the history depth vs resource limits max_sample_per_instance bounds Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Update HeartbeatWhileDestruction test Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Update unit test DDS profiles XML tests profile Signed-off-by: JesusPoderoso <[email protected]> --------- Signed-off-by: JesusPoderoso <[email protected]> (cherry picked from commit 68acb5a) Co-authored-by: Jesús Poderoso <[email protected]>
This just broke my ros2 workspace. Now I get
when calling
|
Hi @michaelaeriksen, we realized this yesterday and have #4417 on the way to fix it, you can give it a try. In the mean time, the ROS 2 Rolling ros2.repos file was updated to pin Fast DDS to the commit previous to this one. In any case, it'd be fixed in some hours. |
* Refs #20401: Add regression test Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Check History QoS inconsistencies Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Check also the history depth vs resource limits max_sample_per_instance bounds Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Update HeartbeatWhileDestruction test Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Update unit test DDS profiles XML tests profile Signed-off-by: JesusPoderoso <[email protected]> --------- Signed-off-by: JesusPoderoso <[email protected]> (cherry picked from commit 68acb5a) # Conflicts: # src/cpp/fastdds/publisher/DataWriterImpl.cpp # src/cpp/fastdds/subscriber/DataReaderImpl.cpp # test/unittest/dds/profiles/test_xml_profiles.xml
* Refs #20401: Add regression test Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Check History QoS inconsistencies Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Check also the history depth vs resource limits max_sample_per_instance bounds Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Update HeartbeatWhileDestruction test Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Update unit test DDS profiles XML tests profile Signed-off-by: JesusPoderoso <[email protected]> --------- Signed-off-by: JesusPoderoso <[email protected]> (cherry picked from commit 68acb5a)
* Check History QoS inconsistencies (#4375) * Refs #20401: Add regression test Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Check History QoS inconsistencies Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Check also the history depth vs resource limits max_sample_per_instance bounds Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Update HeartbeatWhileDestruction test Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Update unit test DDS profiles XML tests profile Signed-off-by: JesusPoderoso <[email protected]> --------- Signed-off-by: JesusPoderoso <[email protected]> (cherry picked from commit 68acb5a) * Fix SecureHelloworldExample (#4416) Signed-off-by: Mario Dominguez <[email protected]> * Just show warning when inconsistency between depth and max_samples_per_instance (#4417) * Refs #20503. Add regression test Signed-off-by: EduPonz <[email protected]> * Refs #20503. Show warning when depth > max_samples_per_instance Signed-off-by: EduPonz <[email protected]> * Refs #20503. Fix InvalidQos tests Signed-off-by: EduPonz <[email protected]> --------- Signed-off-by: EduPonz <[email protected]> Co-authored-by: EduPonz <[email protected]> --------- Signed-off-by: Mario Dominguez <[email protected]> Signed-off-by: EduPonz <[email protected]> Co-authored-by: Jesús Poderoso <[email protected]> Co-authored-by: Mario Domínguez López <[email protected]> Co-authored-by: Miguel Company <[email protected]> Co-authored-by: EduPonz <[email protected]>
* Refs #20401: Add regression test Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Check History QoS inconsistencies Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Check also the history depth vs resource limits max_sample_per_instance bounds Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Update HeartbeatWhileDestruction test Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Update unit test DDS profiles XML tests profile Signed-off-by: JesusPoderoso <[email protected]> --------- Signed-off-by: JesusPoderoso <[email protected]> (cherry picked from commit 68acb5a) # Conflicts: # src/cpp/fastdds/publisher/DataWriterImpl.cpp # src/cpp/fastdds/subscriber/DataReaderImpl.cpp # test/unittest/dds/profiles/test_xml_profiles.xml
* Check History QoS inconsistencies (#4375) * Refs #20401: Add regression test Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Check History QoS inconsistencies Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Check also the history depth vs resource limits max_sample_per_instance bounds Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Update HeartbeatWhileDestruction test Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Update unit test DDS profiles XML tests profile Signed-off-by: JesusPoderoso <[email protected]> --------- Signed-off-by: JesusPoderoso <[email protected]> (cherry picked from commit 68acb5a) # Conflicts: # src/cpp/fastdds/publisher/DataWriterImpl.cpp # src/cpp/fastdds/subscriber/DataReaderImpl.cpp # test/unittest/dds/profiles/test_xml_profiles.xml * Refs #20401: Fix conflicts Signed-off-by: JesusPoderoso <[email protected]> * Fix SecureHelloworldExample (#4416) Signed-off-by: Mario Dominguez <[email protected]> * Just show warning when inconsistency between depth and max_samples_per_instance (#4417) * Refs #20503. Add regression test Signed-off-by: EduPonz <[email protected]> * Refs #20503. Show warning when depth > max_samples_per_instance Signed-off-by: EduPonz <[email protected]> * Refs #20503. Fix InvalidQos tests Signed-off-by: EduPonz <[email protected]> --------- Signed-off-by: EduPonz <[email protected]> Co-authored-by: EduPonz <[email protected]> * Refs #20401: Fix warning Signed-off-by: JesusPoderoso <[email protected]> * Refs #20401: Fix segfault in Mac tests Signed-off-by: JesusPoderoso <[email protected]> --------- Signed-off-by: JesusPoderoso <[email protected]> Signed-off-by: Mario Dominguez <[email protected]> Signed-off-by: EduPonz <[email protected]> Co-authored-by: Jesús Poderoso <[email protected]> Co-authored-by: JesusPoderoso <[email protected]> Co-authored-by: Mario Domínguez López <[email protected]> Co-authored-by: Miguel Company <[email protected]> Co-authored-by: EduPonz <[email protected]>
Description
This PR introduces a check to ensure that the history QoS is consistent in both DataWriter and DataReader creation.
In this case, it checks that if history kind is set as
KEEP_LAST
, the history depth must be higher than zero.Edit: Check between history depth and resource limits'
max_samples_per_instance
also included@Mergifyio backport 2.12.x 2.11.x 2.10.x 2.6.x
Fixes #4365
Contributor Checklist
versions.md
file (if applicable).Related documentation PR: [20401] Improve History QoS documentation and compatibility rules Fast-DDS-docs#664
Reviewer Checklist