You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Implement Phase 1 of join: locate the predecessor via the existing search machinery, query its right neighbor, and send the two independent GetLinkOp requests that establish u's level-0 neighbors.
Algorithm detail, including the asymmetry note in step 7 (the s-chain and z-chain resolve u's two sides independently — never each other's), is specified in docs/protocol/concurrent-insert.md, Section 3.2.
Summary
Implement Phase 1 of join: locate the predecessor via the existing search machinery, query its right neighbor, and send the two independent
GetLinkOprequests that establish u's level-0 neighbors.Algorithm detail, including the asymmetry note in step 7 (the s-chain and z-chain resolve u's two sides independently — never each other's), is specified in
docs/protocol/concurrent-insert.md, Section 3.2.Files
src/node/base_node.rs— Phase 1 orchestration, built on the correlation infrastructure from [Node] Generalize request correlation: add Phase 0 join bootstrap #88.Acceptance Criteria
SearchByIdRequest/SearchByIdResponseunmodified for the predecessor search.z = Nonecase (no right neighbor known) without blocking.try_link([Core] Add try_link: atomic accept-or-forward slot decision #85) — no second write path.z = Noneat query time.Dependencies
Depends on: #84, #85, #88.