RFC-026: add private B2 token authority and exact fold recovery#382
Open
aaltshuler wants to merge 2 commits into
Open
RFC-026: add private B2 token authority and exact fold recovery#382aaltshuler wants to merge 2 commits into
aaltshuler wants to merge 2 commits into
Conversation
Comment on lines
+2200
to
+2203
| if !logical_ids.insert(logical_id.clone()) { | ||
| return Err(OmniError::manifest_internal(format!( | ||
| "stream fold scanner returned duplicate winner id '{logical_id}'" | ||
| ))); |
There was a problem hiding this comment.
When two sequential puts target the same logical ID in one MemWAL generation, admission accepts and durably acknowledges the second put against the first put's confirmed overlay, but the fold rejects the resulting repeated logical ID instead of selecting the final chained winner. Every retry then fails with stream fold scanner returned duplicate winner id, preventing the acknowledged generation from publishing and blocking subsequent stream progress.
Context Used: AGENTS.md (source)
Knowledge Base Used:
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
_stream_tokens.lanceauthority__manifestCAS publishing both pointers, lifecycle state, lineage, and durable attributionidPK metadata, and ordinary__omnigraph_stream_v1user dataWhy
Private B1 proved durable admission and bounded folding, but it did not yet provide durable per-key sequencing, idempotent retry classification, trusted contributor attribution, or an exact two-participant fold outcome. This slice closes that correctness gap without exposing a product API or inventing an OmniGraph WAL/transaction manager beside Lance.
Compatibility and risk
This is an intentional internal storage-format boundary: v8 graphs are refused by v9 and must cross through export/init/load. Recovery-v11 remains historical and is refused under v9 because it lacks the token participant and complete lifecycle-v2 authority. The topology remains main-only, unsharded, and one live writer process; fresh reads and managed generation reclamation remain inactive.
Validation
cargo test --workspace --lockedcargo test --locked -p omnigraph-engine --features failpoints --test failpoints— 141 passed, 1 ignoredcargo test --locked -p omnigraph-engine --features failpoints --test memwal_stream— 34 passedcargo test -p omnigraph-server --features aws --lockedscripts/check-agents-md.shgit diff --checkGreptile Summary
Advances the private RFC-026 stream implementation to schema v9 and recovery-v12.
Confidence Score: 3/5
This PR should not merge until repeated same-key writes within one generation can fold to their final chained winner.
Same-generation admission accepts and durably acknowledges a successor for an already-written key, but the fold subsequently rejects the resulting duplicate logical ID, leaving the acknowledged generation unable to publish.
crates/omnigraph/src/db/omnigraph/stream_ingest.rs and crates/omnigraph/src/table_store/mem_wal/worker.rs
Important Files Changed
Sequence Diagram
Reviews (1): Last reviewed commit: "feat: add private RFC-026 B2 token autho..." | Re-trigger Greptile
Context used (5)