Skip to content

Add regression test for unread subscription readiness across waits#282

Open
nvcyc wants to merge 1 commit into
rollingfrom
nvcyc/buffer_rmw_wait
Open

Add regression test for unread subscription readiness across waits#282
nvcyc wants to merge 1 commit into
rollingfrom
nvcyc/buffer_rmw_wait

Conversation

@nvcyc

@nvcyc nvcyc commented Jul 14, 2026

Copy link
Copy Markdown

Description

Add a cross-RMW regression test verifying that a subscription with an unread sample remains ready across repeated rmw_wait() calls.

The test does the following:

  • Uses the public test_msgs/UnboundedSequences message, whose unbounded uint8 field exercises the buffer-aware Fast DDS path.
  • Publishes a single sample and waits for the subscription to become ready.
  • Calls rmw_wait() again without taking the sample and verifies that the subscription remains ready.
  • Takes the sample and verifies its contents.
  • Requires no external buffer backend or internal test package.

This reproduces the case where an executor observes a ready subscription but does not immediately take its sample, such as when a mutually exclusive callback group is temporarily unavailable.

Is this user-facing behavior change?

No. This PR adds a new test case.

Did you use Generative AI?

Yes. OpenAI GPT-5.6 was used to draft the changes in this PR.

Additional Information

This is to test the case fixed in ros2/rmw_fastrtps#900

@mergify

mergify Bot commented Jul 15, 2026

Copy link
Copy Markdown

Tick the box to add this pull request to the merge queue (same as @mergifyio queue).

  • Queue this pull request

@nvcyc

nvcyc commented Jul 15, 2026

Copy link
Copy Markdown
Author

Pulls: ros2/rmw_fastrtps#900, #282
Gist: https://gist.githubusercontent.com/nvcyc/3d9949c324ba158d1c8cb8484bf29ba4/raw/898b8a7e928a5ac8d70a0e3b8af4573a4f5a6e1d/ros2.repos
BUILD args: --continue-on-error --packages-above-and-dependencies rmw_fastrtps_cpp test_rmw_implementation
TEST args: --packages-above rmw_fastrtps_cpp test_rmw_implementation
ROS Distro: rolling
Job: ci_launcher
ci_launcher ran: https://ci.ros2.org/job/ci_launcher/19851

  • Linux Build Status
  • Linux-aarch64 Build Status
  • Linux-rhel Build Status
  • Windows Build Status

@fujitatomoya fujitatomoya left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm with green CI.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants