Skip to content

[Subscription] Reuse uncovered committed WAL retention boundary - #18778

Merged
jt2594838 merged 1 commit into
apache:masterfrom
Caideyipi:codex/subscription-retention-cache
Sep 30, 2026
Merged

jt2594838 merged 1 commit into
apache:masterfrom
Caideyipi:codex/subscription-retention-cache

Conversation

@Caideyipi

Copy link
Copy Markdown
Collaborator

Summary

  • Reuse the committed WAL retention boundary while committed writer progress advances monotonically, the boundary WAL file still exists, and its cached commit requirement remains uncovered.
  • Recompute the boundary when those conditions change. The replay cursor continues to constrain WAL retention.
  • Add regression coverage for boundary reuse, advancement, progress rollback, and replay cursor protection.

Motivation

In the reported partial-topic subscription workload, filtered writer entries repeatedly refreshed WAL retention. The CPU profile concentrated in WAL metadata reads during those refreshes. Reusing an unchanged, still uncovered boundary avoids reopening the same WAL file for each filtered entry.

Verification

  • git diff --check passed.
  • The focused regression test was not rerun after correcting its WAL entry helper because local tests were stopped at the requester's direction.

@jt2594838
jt2594838 merged commit b777d3c into apache:master Sep 30, 2026
37 of 39 checks passed
@jt2594838
jt2594838 deleted the codex/subscription-retention-cache branch September 30, 2026 09:43
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.

2 participants