Skip to content

Conversation

@BenWhitehead
Copy link
Collaborator

If a crc32cMatch or md5Match are not specified when creating the resumable upload, a running checksum will be computed and included in the finalization call.

  • Add plumbing logic for capture/restore logic of BlobWriteChannelV2
  • Add JsonResumableWrite hasher and cumulativeCrc32c to track the hasher and running checksum when necessary
  • Update JsonResumableSession to send cumulativeCrc32c when finalizing, and to update the running crc32c when a successful result is received
  • Add integration tests to ITJsonResumableSessionTest to verify checksum is sent and correctly computed, even when retried or partial consumed
  • Update Hasher.nullSafeConcat to be type dependent upon the left hand side provided type
  • Include X-Goog-Hash if present when an upload request fails

@BenWhitehead BenWhitehead requested a review from a team as a code owner December 19, 2025 03:38
@product-auto-label product-auto-label bot added size: l Pull request size is large. api: storage Issues related to the googleapis/java-storage API. labels Dec 19, 2025
@BenWhitehead BenWhitehead force-pushed the my/json/resumable/checksum branch from 8094e0b to 74259a5 Compare December 19, 2025 04:13
If a crc32cMatch or md5Match are not specified when creating the resumable upload, a running checksum will be computed and included in the finalization call.

* Add plumbing logic for capture/restore logic of BlobWriteChannelV2
* Add JsonResumableWrite hasher and cumulativeCrc32c to track the hasher and running checksum when necessary
* Update JsonResumableSession to send cumulativeCrc32c when finalizing, and to update the running crc32c when a successful result is received
* Add integration tests to ITJsonResumableSessionTest to verify checksum is sent and correctly computed, even when retried or partial consumed
* Update Hasher.nullSafeConcat to be type dependent upon the left hand side provided type
@BenWhitehead BenWhitehead force-pushed the my/json/resumable/checksum branch from 74259a5 to 02e9350 Compare December 19, 2025 18:46
@BenWhitehead BenWhitehead requested a review from a team as a code owner December 19, 2025 18:46
@nidhiii-27 nidhiii-27 added the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Dec 22, 2025
@yoshi-kokoro yoshi-kokoro removed the kokoro:force-run Add this label to force Kokoro to re-run the tests. label Dec 22, 2025
@ShreyasSinha
Copy link
Collaborator

Merged as part of Nidhi's PR. Closing this one.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

api: storage Issues related to the googleapis/java-storage API. size: l Pull request size is large.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants