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
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.

3 participants