Skip to content

Conversation

@BenWhitehead
Copy link
Collaborator

The main idea here is to allow async incremental clearing of the outbound queue even when large writes are performed.

Previously, when using the MinFlushStrategy, if a large write was performed (larger than maxPendingBytes) a single flush: true state_lookup: true would be sent to GCS, thereby making it so that no new writes could be accepted until the full maxPendingBytes where ack'd. This change updates so that if a write is larger than minFlushSize a message will be annotated flush: true state_lookup: true. This doesn't necessarily mean that a flush will be done every minFlushSize as the message packed can be up to 2MiB, this will simply annotate a message as flush: true state_lookup: true if it has been at least minFlushSize bytes since we sent a flush.

… for large writes

This main idea here is to allow async incremental clearing of the outbound queue even when large writes are performed.

Previously, when using the MinFlushStrategy, if a large write was performed (larger than maxPendingBytes) a single `flush: true state_lookup: true` would be sent to GCS, thereby making it so that no new writes could be accepted until the full `maxPendingBytes` where ack'd. This change updates so that if a write is larger than `minFlushSize` a message will be annotated `flush: true state_lookup: true`. This doesn't necessarily mean that a flush will be done every `minFlushSize` as the message packed can be up to 2MiB, this will simply annotate a message as `flush: true state_lookup: true` if it has been at least `minFlushSize` bytes since we sent a flush.
@BenWhitehead BenWhitehead requested a review from a team as a code owner September 4, 2025 21:28
@product-auto-label product-auto-label bot added size: m Pull request size is medium. api: storage Issues related to the googleapis/java-storage API. labels Sep 4, 2025
@BenWhitehead BenWhitehead merged commit d0ffe18 into main Sep 5, 2025
25 checks passed
@BenWhitehead BenWhitehead deleted the appendable/01/flush-increment branch September 5, 2025 17:29
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: m Pull request size is medium.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants