Repository navigation
Fix receipt admin reads without upfront relation locks - #658
Conversation
Prevent the compact-member range membership check from becoming a broad anti-join over retained closure batches. Preserve every identity and closure predicate and the existing result semantics.
Closure writers preserve the original claim slot. Match that slot in row-local receipt closure checks while retaining global receipt identity.
|
Important Review skippedAuto reviews are disabled on base/target branches other than the default branch. Please check the settings in the CodeRabbit UI or the
|
Codex Review Summary: ✅ CompletedThis comment shows the latest Codex review activity on this pull request.
ℹ️ About Codex in GitHubYour team has set up Codex to review pull requests in this repo. Reviews are triggered when you
Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings. |
Running jobs represented by compact or legacy receipt claims were missing from admin job lists and kind counts until their leases materialized. Include those claims with the existing scope, cursor, kind, tag and queue filters, and exclude tombstoned source rows when hydrating jobs moved between ready lanes.
Prepared on #655 and the merged #657. This splits the receipt-read changes from #652/#653 and adds no upfront relation locks. The remaining point-read/list-hydration limitation is documented: if prune truncates a partition during the read, a completed job can briefly appear available or missing; retry with a fresh read.
Validation: both Rust workspaces passed formatting, all-target/all-feature Clippy with warnings denied, and workspace builds, including after composition with #655. On PostgreSQL18, eight public-API cases passed across compact, row-local and materialized receipts, moved-row multiplicity, list/reference equivalence and full inserted-job count conservation. Both reference/conservation cases passed again on the composed head. Matched old-source controls reproduced the duplicate moved-row projection and omitted compact-receipt list; the materialized negative control passed. Root and an independent reviewer checked the source. Full CI passed all29jobs at
0e6b326a.