Repository navigation
Return Unavailable when resuming an active ByteStream upload - #2889
Open
ashishsonamm wants to merge 1 commit into
Open
ashishsonamm wants to merge 1 commit into
ashishsonamm wants to merge 1 commit into
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
Collaborator
|
Thanks @ashishsonamm we are taking a look at this. |
This branch was successfully deployed
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.
What and why
A ByteStream resume (offset > 0) that arrives while the server still thinks the old stream is active was treated as a UUID collision, restarted at offset 0, and failed with non-retryable
InvalidArgument. It now returnsUnavailable, so theclient retries and joins the idle stream. Offset-0 collisions are unchanged.
Fixes #2888
How was this verified?
New test
resume_while_previous_stream_still_active: fails onmainwithReceived out of order data. Got 5, expected 0, passes with the fix (getsUnavailable, then the retry completes the upload). Hit the same error in a real Bazel build uploading a 235 MB blob.Risk
Low. Only changes offset > 0 writes to a still-active UUID, which always failed before. Adds one
pubaccessor innativelink-util.AI assistance
Used Claude Code while debugging a failed build: it helped me find the collision path, and write a failing test. It drafted the fix and I reviewed and tested it and understand every line.