Skip to content

[#24061] Add ContentFilteredTopic filter#200

Merged
Danipiza merged 19 commits into
mainfrom
feature/new-filter
Mar 24, 2026
Merged

[#24061] Add ContentFilteredTopic filter#200
Danipiza merged 19 commits into
mainfrom
feature/new-filter

Conversation

@Danipiza

@Danipiza Danipiza commented Jan 20, 2026

Copy link
Copy Markdown
Contributor

Description

This PR introduces several improvements to DDS-Record-Replay, focusing on runtime filter updates, add ContentFilteredTopic new filter category, a configuration refactor for DDS/RTPS mode selection, and various bug fixes and code cleanups. Also fixes the error in Windows CI

New ContentFilteredTopic category filter

dds:

  topics:
    - name: "HelloWorldTopic"
      type: "HelloWorld"
      filter: "index > 0"

Refactor configuration

Now the default value is DDS instead of RTPS

specs:
  rtps: true  # by default: false -> DDS mode

Bugfix

  • partition_names.erase(writer_name) was erasing at the wrong map level.
    Fixed to partition_names[topic_name].erase(writer_guid).

Windows CI Fix [#23932] Fix Windows Debug CI

Related PR: [#23594] Support "partitions" in DDS Recorder & Replayer

Contributor Checklist

  • Commit messages follow the project guidelines.
  • Code snippets related to the added documentation have been provided.
  • Documentation tests pass locally.

Reviewer Checklist

  • The title and description correctly express the PR's purpose.
  • Check contributor checklist is correct.
  • CI passes without warnings or errors.

Signed-off-by: danipiza <dpizarrogallego@gmail.com>
Signed-off-by: danipiza <dpizarrogallego@gmail.com>
Signed-off-by: danipiza <dpizarrogallego@gmail.com>
Signed-off-by: danipiza <dpizarrogallego@gmail.com>
Signed-off-by: danipiza <dpizarrogallego@gmail.com>
Signed-off-by: danipiza <dpizarrogallego@gmail.com>
Signed-off-by: danipiza <dpizarrogallego@gmail.com>
@codecov-commenter

codecov-commenter commented Feb 16, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 15.74803% with 107 lines in your changes missing coverage. Please review.
✅ Project coverage is 29.10%. Comparing base (abfdb5a) to head (d817898).

Files with missing lines Patch % Lines
...cipants/src/cpp/replayer/McapReaderParticipant.cpp 0.00% 31 Missing ⚠️
ddsrecorder/src/cpp/tool/DdsRecorder.cpp 31.25% 12 Missing and 10 partials ⚠️
..._yaml/src/cpp/recorder/YamlReaderConfiguration.cpp 4.34% 19 Missing and 3 partials ⚠️
...icipants/src/cpp/replayer/SqlReaderParticipant.cpp 34.78% 8 Missing and 7 partials ⚠️
...cipants/src/cpp/replayer/BaseReaderParticipant.cpp 14.28% 6 Missing ⚠️
ddsreplayer/src/cpp/tool/DdsReplayer.cpp 0.00% 2 Missing and 3 partials ⚠️
..._yaml/src/cpp/replayer/YamlReaderConfiguration.cpp 0.00% 3 Missing and 1 partial ⚠️
.../src/cpp/recorder/handler/mcap/McapSizeTracker.cpp 0.00% 2 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #200      +/-   ##
==========================================
- Coverage   29.23%   29.10%   -0.13%     
==========================================
  Files          74       74              
  Lines        4970     5047      +77     
  Branches     2587     2640      +53     
==========================================
+ Hits         1453     1469      +16     
- Misses       2342     2393      +51     
- Partials     1175     1185      +10     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

Signed-off-by: danipiza <dpizarrogallego@gmail.com>
@Danipiza Danipiza changed the title [#24061] New filter implementation [#24061] Update DDS-Record-Replay filter Feb 17, 2026
@Danipiza Danipiza changed the title [#24061] Update DDS-Record-Replay filter [#24061] Update DDS-Record-Replay filter Feb 17, 2026
Signed-off-by: danipiza <dpizarrogallego@gmail.com>

@raulojeda22 raulojeda22 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Add a more descriptive PR description

Comment thread ddsrecorder_participants/src/cpp/replayer/SqlReaderParticipant.cpp Outdated
Comment thread ddsrecorder_participants/src/cpp/replayer/BaseReaderParticipant.cpp Outdated
Comment thread ddsrecorder_participants/src/cpp/replayer/BaseReaderParticipant.cpp Outdated
Comment thread ddsreplayer/src/cpp/tool/DdsReplayer.cpp Outdated
Signed-off-by: danipiza <dpizarrogallego@gmail.com>
Signed-off-by: danipiza <dpizarrogallego@gmail.com>
Signed-off-by: danipiza <dpizarrogallego@gmail.com>
Signed-off-by: danipiza <dpizarrogallego@gmail.com>
Signed-off-by: danipiza <dpizarrogallego@gmail.com>
Signed-off-by: danipiza <dpizarrogallego@gmail.com>
raulojeda22
raulojeda22 previously approved these changes Mar 23, 2026

@raulojeda22 raulojeda22 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

LGTM

Signed-off-by: danipiza <dpizarrogallego@gmail.com>

@raulojeda22 raulojeda22 left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

LGTM

@Danipiza Danipiza changed the title [#24061] Update DDS-Record-Replay filter [#24061] Add ContentFilteredTopic filter Mar 24, 2026
@Danipiza
Danipiza merged commit 5b8c380 into main Mar 24, 2026
32 of 59 checks passed
@Danipiza
Danipiza deleted the feature/new-filter branch March 24, 2026 13:56
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