Skip to content

fix: exact-filter RDF bloom on datanode - #3

Draft
discord9 wants to merge 4 commits into
omos/rdf-bloom-wiringfrom
omos/rdf-bloom-dn-exact
Draft

fix: exact-filter RDF bloom on datanode#3
discord9 wants to merge 4 commits into
omos/rdf-bloom-wiringfrom
omos/rdf-bloom-dn-exact

Conversation

@discord9

@discord9 discord9 commented Jun 24, 2026

Copy link
Copy Markdown
Owner

I hereby agree to the terms of the GreptimeDB CLA.

Refer to a related PR or issue link (optional)

Fork-only stack PR. Stacked on PR2: #2

Earlier stack:

Depends on:

Part of original umbrella draft PR: GreptimeTeam#8342

What's changed and what's your intention?

This is PR 3 of the RDF Bloom stack. It makes DN evaluate Bloom as an exact row filter in FilterExec while keeping pushdown-safe filters available to scan pruning:

  • adds a non-pushdown wrapper around exact dynamic filters
  • splits DN runtime filter state into pushdown and exact filters
  • decodes/validates updates before mutating runtime filters or advancing generation
  • rejects same-generation complete payload mismatches in both pending and runtime paths without mutating lifecycle state
  • logs mismatch metadata/digests and truncated installed expression summaries, without raw payload bytes/bitsets
  • returns both pushdown and exact filter expressions for initial remote dynamic filters

Validation run locally:

  • cargo fmt --all -- --check
  • git diff --check
  • CARGO_PROFILE_DEV_DEBUG=0 CARGO_PROFILE_TEST_DEBUG=0 cargo test -p datanode registrations --lib
  • CARGO_PROFILE_DEV_DEBUG=0 CARGO_PROFILE_TEST_DEBUG=0 cargo test -p datanode remote_dyn_filter --lib

PR Checklist

Please convert it to a draft if some of the following conditions are not met.

  • I have written the necessary rustdoc comments.
  • I have added the necessary unit tests and integration tests.
  • This PR requires documentation updates.
  • API changes are backward compatible.
  • Schema or data changes are backward compatible.

@discord9
discord9 force-pushed the omos/rdf-bloom-wiring branch from bb0fe71 to 775a077 Compare June 25, 2026 04:06
@discord9
discord9 force-pushed the omos/rdf-bloom-dn-exact branch from 9d0d955 to 42e0ba0 Compare June 25, 2026 04:06
@discord9
discord9 force-pushed the omos/rdf-bloom-wiring branch from 775a077 to c5a8c74 Compare June 25, 2026 09:16
@discord9
discord9 force-pushed the omos/rdf-bloom-dn-exact branch from 16b6af5 to 0e90855 Compare June 25, 2026 09:16
@discord9
discord9 force-pushed the omos/rdf-bloom-wiring branch from c5a8c74 to e6375bc Compare June 25, 2026 10:24
@discord9
discord9 force-pushed the omos/rdf-bloom-dn-exact branch 2 times, most recently from 05f9888 to 71a935f Compare June 25, 2026 12:59
@discord9
discord9 force-pushed the omos/rdf-bloom-wiring branch 2 times, most recently from b19e1ec to c4e8c34 Compare June 30, 2026 04:01
@discord9
discord9 force-pushed the omos/rdf-bloom-dn-exact branch from 71a935f to 797e90e Compare June 30, 2026 04:01
discord9 added 4 commits July 6, 2026 16:46
Signed-off-by: discord9 <discord9@163.com>
Signed-off-by: discord9 <discord9@163.com>
Signed-off-by: discord9 <discord9@163.com>
Signed-off-by: discord9 <discord9@163.com>
@discord9
discord9 force-pushed the omos/rdf-bloom-dn-exact branch from 797e90e to 8a1110d Compare July 6, 2026 09:46
@discord9
discord9 force-pushed the omos/rdf-bloom-wiring branch from c4e8c34 to 6f5e273 Compare July 6, 2026 09:46
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.

1 participant