Skip to content

feat(Gax): add stall control for resumable uploads - #9682

Open
bshaffer wants to merge 4 commits into
mainfrom
scotty-stall-control
Open

feat(Gax): add stall control for resumable uploads#9682
bshaffer wants to merge 4 commits into
mainfrom
scotty-stall-control

Conversation

@bshaffer

Copy link
Copy Markdown
Contributor

Adds stall control support to Resumable Uploads according to go/cloudsdk-scotty-stall-control.

Changes

  • Adds transferStallMinimumRate (MiB/s) and transferStallTimeout (seconds) options to startUpload().
  • Calculates chunk lag and tracks stall timeout clock across chunk transfers.
  • Computes per-chunk timeouts and per-attempt timeouts (min(chunk_timeout, 2 * chunk_size / rate)).
  • Preserves chunk deadlines across retry and recovery requests.
  • Converts chunk deadline timeouts to an ApiException ("Upload stalled.") when global deadline is not set or not exceeded.
  • Omits the default 10-minute global deadline when stall control is enabled.

@bshaffer
bshaffer requested a review from a team as a code owner September 11, 2026 22:04
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.

1 participant