Repository navigation
fix(minimald): key gvproxy state dir by daemon instance id - #1832
Merged
norrietaylor merged 3 commits intoOct 3, 2026
Merged
Conversation
Two native daemons sharing one state root clobber each other's gvproxy control socket because both use <state_root>/gvproxy as the gvproxy state directory. Daemon B's attach replaces daemon A's control socket; A's stop() then deletes B's socket. Key the gvproxy directory by daemon instance so each daemon gets its own isolated directory: <state_root>/gvproxy/<daemon_id>/. The daemon_id is a random 5-char alphanumeric string already generated at startup and available in scope at the SwitchClient construction site. Co-authored-by: Copilot <223556219+Copilot@users.noreply.github.com>
Contributor
|
Warning Review limit reached
This review includes 1 billable file and costs up to $0.25. Or wait 52 minutes for your next included review. View limit detailsLimit details: You’ve used all 2 included reviews currently available. Your 55 included PR review attempts over the past 7 days set your current allowance at 2 reviews per hour. Review configuration: ⚙️ Run configuration
📒 Files selected for processing (1)
Comment |
norrietaylor
enabled auto-merge
October 3, 2026 07:56
norrietaylor
approved these changes
Oct 3, 2026
norrietaylor
deleted the
inbox-patch/gvproxy-daemon-id-5f536285ff115665
branch
October 3, 2026 08:10
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.
Routing-Key: inbox-route/I_kwDOSUhdos8AAAABUsrQzQ
Two native daemons sharing one state root clobber each other's
gvproxy control socket because both use
<state_root>/gvproxyas thegvproxy state directory. Daemon B's attach replaces daemon A's
control socket; A's
stop()then deletes B's socket.Key the gvproxy directory by daemon instance so each daemon gets its
own isolated directory:
<state_root>/gvproxy/<daemon_id>/. Thedaemon_idis a random 5-char alphanumeric string already generated atstartup and available in scope at the
SwitchClientconstruction site.Verification
cargo fmt --check— passedcargo clippy -p minimald --all-targets --locked— no new warnings (pre-existingdouble_must_useinremote-protoandneedless_borrows_for_generic_argsinargsare unrelated)cargo build -p minimald --locked— passedcargo test -p minimald --locked— 543 passed; 5 flaky tests fail under parallel execution (port conflicts) but all pass in isolation, pre-existing and unrelated to this change