Skip to content

Fix concurrent Playground cache lease handoffs - #2248

Open
chubes4 wants to merge 1 commit into
mainfrom
fix/playground-cache-lease-sidecar-concurrency
Open

Fix concurrent Playground cache lease handoffs#2248
chubes4 wants to merge 1 commit into
mainfrom
fix/playground-cache-lease-sidecar-concurrency

Conversation

@chubes4

@chubes4 chubes4 commented Aug 10, 2026

Copy link
Copy Markdown
Collaborator

Summary

  • retry archive-lock acquisition when a waiting reader observes a completed owner removing its sidecar
  • verify the opened directory generation before every pathname-based lock-directory removal, including Linux cleanup
  • add a barrier-synchronized two-process test that proves one materializer, successful waiting handoffs, and stale-owner recovery

Fixes #2247.

Verification

  • npm run test:playground-custom-archive-cache
  • npm run build
  • two independent 500-iteration process loops against a fresh 7.0.3.zip.lock: both exit 0 after the fix; current main reproduced Playground cache lease sidecar changed while accessing in one process

AI disclosure

Implemented with openai/gpt-5.6-sol via OpenCode. Chris Huber reviewed and remains responsible for the change.

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.

Serialize concurrent Playground archive cache lock handoffs

1 participant