-
Notifications
You must be signed in to change notification settings - Fork 778
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
[20401] Check History QoS inconsistencies #4375
Conversation
cc41acc
to
de48e71
Compare
Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com>
Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com>
…le_per_instance bounds Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com>
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 <jesuspoderoso@eprosima.com>
Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com>
@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 <jesuspoderoso@eprosima.com> * Refs #20401: Check History QoS inconsistencies Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> * Refs #20401: Check also the history depth vs resource limits max_sample_per_instance bounds Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> * Refs #20401: Update HeartbeatWhileDestruction test Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> * Refs #20401: Update unit test DDS profiles XML tests profile Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> --------- Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> (cherry picked from commit 68acb5a)
* Refs #20401: Add regression test Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> * Refs #20401: Check History QoS inconsistencies Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> * Refs #20401: Check also the history depth vs resource limits max_sample_per_instance bounds Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> * Refs #20401: Update HeartbeatWhileDestruction test Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> * Refs #20401: Update unit test DDS profiles XML tests profile Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> --------- Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> (cherry picked from commit 68acb5a) Co-authored-by: Jesús Poderoso <120394830+JesusPoderoso@users.noreply.github.com>
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 <jesuspoderoso@eprosima.com> * Refs #20401: Check History QoS inconsistencies Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> * Refs #20401: Check also the history depth vs resource limits max_sample_per_instance bounds Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> * Refs #20401: Update HeartbeatWhileDestruction test Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> * Refs #20401: Update unit test DDS profiles XML tests profile Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> --------- Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> (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 <jesuspoderoso@eprosima.com> * Refs #20401: Check History QoS inconsistencies Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> * Refs #20401: Check also the history depth vs resource limits max_sample_per_instance bounds Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> * Refs #20401: Update HeartbeatWhileDestruction test Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> * Refs #20401: Update unit test DDS profiles XML tests profile Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> --------- Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> (cherry picked from commit 68acb5a)
* Check History QoS inconsistencies (#4375) * Refs #20401: Add regression test Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> * Refs #20401: Check History QoS inconsistencies Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> * Refs #20401: Check also the history depth vs resource limits max_sample_per_instance bounds Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> * Refs #20401: Update HeartbeatWhileDestruction test Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> * Refs #20401: Update unit test DDS profiles XML tests profile Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> --------- Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> (cherry picked from commit 68acb5a) * Fix SecureHelloworldExample (#4416) Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com> * Just show warning when inconsistency between depth and max_samples_per_instance (#4417) * Refs #20503. Add regression test Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #20503. Show warning when depth > max_samples_per_instance Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #20503. Fix InvalidQos tests Signed-off-by: EduPonz <eduardoponz@eprosima.com> --------- Signed-off-by: EduPonz <eduardoponz@eprosima.com> Co-authored-by: EduPonz <eduardoponz@eprosima.com> --------- Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com> Signed-off-by: EduPonz <eduardoponz@eprosima.com> Co-authored-by: Jesús Poderoso <120394830+JesusPoderoso@users.noreply.github.com> Co-authored-by: Mario Domínguez López <116071334+Mario-DL@users.noreply.github.com> Co-authored-by: Miguel Company <miguelcompany@eprosima.com> Co-authored-by: EduPonz <eduardoponz@eprosima.com>
* Refs #20401: Add regression test Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> * Refs #20401: Check History QoS inconsistencies Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> * Refs #20401: Check also the history depth vs resource limits max_sample_per_instance bounds Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> * Refs #20401: Update HeartbeatWhileDestruction test Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> * Refs #20401: Update unit test DDS profiles XML tests profile Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> --------- Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> (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 <jesuspoderoso@eprosima.com> * Refs #20401: Check History QoS inconsistencies Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> * Refs #20401: Check also the history depth vs resource limits max_sample_per_instance bounds Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> * Refs #20401: Update HeartbeatWhileDestruction test Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> * Refs #20401: Update unit test DDS profiles XML tests profile Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> --------- Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> (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 <jesuspoderoso@eprosima.com> * Fix SecureHelloworldExample (#4416) Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com> * Just show warning when inconsistency between depth and max_samples_per_instance (#4417) * Refs #20503. Add regression test Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #20503. Show warning when depth > max_samples_per_instance Signed-off-by: EduPonz <eduardoponz@eprosima.com> * Refs #20503. Fix InvalidQos tests Signed-off-by: EduPonz <eduardoponz@eprosima.com> --------- Signed-off-by: EduPonz <eduardoponz@eprosima.com> Co-authored-by: EduPonz <eduardoponz@eprosima.com> * Refs #20401: Fix warning Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> * Refs #20401: Fix segfault in Mac tests Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> --------- Signed-off-by: JesusPoderoso <jesuspoderoso@eprosima.com> Signed-off-by: Mario Dominguez <mariodominguez@eprosima.com> Signed-off-by: EduPonz <eduardoponz@eprosima.com> Co-authored-by: Jesús Poderoso <120394830+JesusPoderoso@users.noreply.github.com> Co-authored-by: JesusPoderoso <jesuspoderoso@eprosima.com> Co-authored-by: Mario Domínguez López <116071334+Mario-DL@users.noreply.github.com> Co-authored-by: Miguel Company <miguelcompany@eprosima.com> Co-authored-by: EduPonz <eduardoponz@eprosima.com>
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