Skip to content

feat(gax): implement resumable upload session resumption - #14677

Open
whowes wants to merge 1 commit into
whowes/resumable-upload-refactorfrom
whowes/resumable-upload-resume
Open

whowes wants to merge 1 commit into
whowes/resumable-upload-refactorfrom
whowes/resumable-upload-resume

Conversation

@whowes

@whowes whowes commented Oct 16, 2026

Copy link
Copy Markdown
Contributor

Implements ResumableUploadCallable.resumeCall(...) to support resuming interrupted resumable upload sessions from a saved session URL and effective chunk size.

@whowes
whowes added this pull request to stack #14678 October 16, 2026 23:06
gemini-code-assist[bot]

This comment was marked as outdated.

@whowes
whowes removed this pull request from stack #14678 October 22, 2026 16:36
@whowes
whowes force-pushed the whowes/resumable-upload-resume branch from 386ec37 to c72e920 Compare October 22, 2026 16:37
@whowes
whowes changed the base branch from whowes/align-chunk-size to whowes/resumable-upload-refactor October 22, 2026 16:39
@whowes
whowes added this pull request to stack #14732 October 22, 2026 16:41
@whowes

whowes commented Oct 22, 2026

Copy link
Copy Markdown
Contributor Author

/gemini review

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request implements session resumption for resumable uploads in the Java GAX library. It introduces the resumeCall method in ResumableUploadCallableImpl, updates ResumableUploadFutureImpl and ResumableUploadProgressTracker to handle resumption, and enhances RewindableStreamBuffer to skip forward to the server's committed offset. Comprehensive unit and integration tests are also added. Feedback suggests preserving the original EOFException as the cause when catching it from ByteStreams.skipFully in RewindableStreamBuffer to maintain the exception chain and avoid potential null messages.

@whowes
whowes force-pushed the whowes/resumable-upload-resume branch 2 times, most recently from c72e920 to cf0c9d4 Compare October 22, 2026 17:20
@whowes
whowes force-pushed the whowes/resumable-upload-resume branch from cf0c9d4 to c6f9b2b Compare October 22, 2026 21:59
@whowes
whowes force-pushed the whowes/resumable-upload-resume branch from c6f9b2b to b02ed8c Compare October 22, 2026 22:31
@whowes
whowes marked this pull request as ready for review October 22, 2026 22:39
@whowes
whowes requested a review from a team as a code owner October 22, 2026 22:39
@whowes
whowes requested a review from blakeli0 October 22, 2026 22:39
@sonarqubecloud

Copy link
Copy Markdown

@sonarqubecloud

Copy link
Copy Markdown

Quality Gate Failed Quality Gate failed for 'gapic-generator-java-root'

Failed conditions
0.0% Coverage on New Code (required ≥ 80%)

See analysis details on SonarQube Cloud

This branch has not been deployed

No deployments
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