-
Notifications
You must be signed in to change notification settings - Fork 94
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
feat: Adding grpc compression support #1000
feat: Adding grpc compression support #1000
Conversation
No region tags are edited in this PR.This comment is generated by snippet-bot.
|
b59e331
to
de51b2d
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If this PR was submitted, would the feature work, or are changes required in the server? If this is the case we probably would want to hold it off.
google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/Publisher.java
Outdated
Show resolved
Hide resolved
google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/Publisher.java
Show resolved
Hide resolved
google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/Publisher.java
Outdated
Show resolved
Hide resolved
google-cloud-pubsub/src/test/java/com/google/cloud/pubsub/it/ITPubSubTest.java
Outdated
Show resolved
Hide resolved
google-cloud-pubsub/src/test/java/com/google/cloud/pubsub/it/ITPubSubTest.java
Outdated
Show resolved
Hide resolved
google-cloud-pubsub/src/test/java/com/google/cloud/pubsub/it/ITPubSubTest.java
Show resolved
Hide resolved
samples/snippets/src/main/java/pubsub/PublishWithCompressionExample.java
Outdated
Show resolved
Hide resolved
samples/snippets/src/main/java/pubsub/PublishWithCompressionExample.java
Outdated
Show resolved
Hide resolved
samples/snippets/src/main/java/pubsub/PublishWithCompressionExample.java
Outdated
Show resolved
Hide resolved
google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/Publisher.java
Outdated
Show resolved
Hide resolved
google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/Publisher.java
Show resolved
Hide resolved
google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/Publisher.java
Show resolved
Hide resolved
samples/snippets/src/main/java/pubsub/PublishWithCompressionExample.java
Outdated
Show resolved
Hide resolved
google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/Publisher.java
Show resolved
Hide resolved
google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/Publisher.java
Outdated
Show resolved
Hide resolved
google-cloud-pubsub/src/main/java/com/google/cloud/pubsub/v1/Publisher.java
Outdated
Show resolved
Hide resolved
samples/snippets/src/main/java/pubsub/PublishWithCompressionExample.java
Outdated
Show resolved
Hide resolved
samples/snippets/src/main/java/pubsub/PublishWithCompressionExample.java
Outdated
Show resolved
Hide resolved
samples/snippets/src/main/java/pubsub/PublishWithCompressionExample.java
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@rajanya-google Please don't add samples in the same PR.
I need to work with you to plan the samples in the internal tools. This feature also needs to be released first before the sample tests will pass. When writing samples, please open a branch from this repo instead of a fork.
I also suggest we provide a short code snippet in the docstring as part of the library documentation.
I have removed sample for compression.
Sure.
I don't quite follow this. Could you please point me to the location? |
Thank you for removing samples are removed from this PR.
Here's an example: https://cloud.google.com/java/docs/reference/google-cloud-pubsub/latest/com.google.cloud.pubsub.v1.PublisherInterface#methods |
…onfig to v1.4.0 (googleapis#1105) [![WhiteSource Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [com.google.cloud:google-cloud-shared-config](https://togithub.com/googleapis/java-shared-config) | `1.3.3` -> `1.4.0` | [![age](https://badges.renovateapi.com/packages/maven/com.google.cloud:google-cloud-shared-config/1.4.0/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/maven/com.google.cloud:google-cloud-shared-config/1.4.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/maven/com.google.cloud:google-cloud-shared-config/1.4.0/compatibility-slim/1.3.3)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/maven/com.google.cloud:google-cloud-shared-config/1.4.0/confidence-slim/1.3.3)](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>googleapis/java-shared-config</summary> ### [`v1.4.0`](https://togithub.com/googleapis/java-shared-config/blob/HEAD/CHANGELOG.md#​140-httpsgithubcomgoogleapisjava-shared-configcomparev133v140-2022-04-28) [Compare Source](https://togithub.com/googleapis/java-shared-config/compare/v1.3.3...v1.4.0) ##### Features - **java:** remove native image module ([#​471](https://togithub.com/googleapis/java-shared-config/issues/471)) ([7fcba01](https://togithub.com/googleapis/java-shared-config/commit/7fcba016b3138d7beaa4e962853f9bc80f59438c)) ##### [1.3.3](https://togithub.com/googleapis/java-shared-config/compare/v1.3.2...v1.3.3) (2022-04-19) ##### Bug Fixes - **java:** remove protobuf feature from native profile ([#​461](https://togithub.com/googleapis/java-shared-config/issues/461)) ([ffd07cb](https://togithub.com/googleapis/java-shared-config/commit/ffd07cb18ee7d45d4daee1d9ea6f6d321fdca874)) ##### Dependencies - update dependency com.google.cloud:native-image-support to v0.12.11 ([#​459](https://togithub.com/googleapis/java-shared-config/issues/459)) ([d20008d](https://togithub.com/googleapis/java-shared-config/commit/d20008df15209708fdf9d06828b567778190f4d0)) - update dependency com.google.cloud:native-image-support to v0.13.1 ([#​465](https://togithub.com/googleapis/java-shared-config/issues/465)) ([b202064](https://togithub.com/googleapis/java-shared-config/commit/b2020648816feb4740ad70acedfed470d7da5bcf)) ##### [1.3.2](https://togithub.com/googleapis/java-shared-config/compare/v1.3.1...v1.3.2) (2022-03-28) ##### Dependencies - revert google-java-format to 1.7 ([#​453](https://togithub.com/googleapis/java-shared-config/issues/453)) ([cbc777f](https://togithub.com/googleapis/java-shared-config/commit/cbc777f3e9ab75edb6fa2e0268a7446ae4111725)) ##### [1.3.1](https://togithub.com/googleapis/java-shared-config/compare/v1.3.0...v1.3.1) (2022-03-25) ##### Dependencies - update dependency com.google.cloud:native-image-support to v0.12.10 ([#​443](https://togithub.com/googleapis/java-shared-config/issues/443)) ([5b39d5e](https://togithub.com/googleapis/java-shared-config/commit/5b39d5ee15121f052226ff873b6ab101e9c71de5)) - update dependency com.google.googlejavaformat:google-java-format to v1.15.0 ([#​426](https://togithub.com/googleapis/java-shared-config/issues/426)) ([4c3c4b6](https://togithub.com/googleapis/java-shared-config/commit/4c3c4b66129632181e6bc363a0ecccf4f5aac914)) - update dependency org.graalvm.buildtools:junit-platform-native to v0.9.11 ([#​448](https://togithub.com/googleapis/java-shared-config/issues/448)) ([f7f518e](https://togithub.com/googleapis/java-shared-config/commit/f7f518e87d1d9feb9ac54d7c099f97d8751ee3da)) - update dependency org.graalvm.buildtools:native-maven-plugin to v0.9.11 ([#​449](https://togithub.com/googleapis/java-shared-config/issues/449)) ([3e1c0b5](https://togithub.com/googleapis/java-shared-config/commit/3e1c0b5a1d2f4a0db88c06a0d683ed90cbc745e2)) </details> --- ### Configuration 📅 **Schedule**: At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, click this checkbox. --- This PR has been generated by [WhiteSource Renovate](https://renovate.whitesourcesoftware.com). View repository job log [here](https://app.renovatebot.com/dashboard#github/googleapis/java-pubsub).
- [ ] Regenerate this pull request now. PiperOrigin-RevId: 444328399 Source-Link: googleapis/googleapis@c7ca416 Source-Link: googleapis/googleapis-gen@d617054 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiZDYxNzA1NDUzYTYyYjNlY2RhNzhhYTMwYzE5Mjg0MGViYzVhOGE5MCJ9 feat: AuditConfig for IAM v1 PiperOrigin-RevId: 439356405 Source-Link: googleapis/googleapis@afa2ba1 Source-Link: googleapis/googleapis-gen@3e40c17 Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiM2U0MGMxN2UxNTEwYzk1ZmFiNThmYzIxNDNjY2I2MWNjZWNhNTk4OSJ9
…a to 2.16.0 (googleapis#1107) - [ ] Regenerate this pull request now. PiperOrigin-RevId: 446250659 Source-Link: googleapis/googleapis@dc4ef31 Source-Link: googleapis/googleapis-gen@5fdda4d Copy-Tag: eyJwIjoiLmdpdGh1Yi8uT3dsQm90LnlhbWwiLCJoIjoiNWZkZGE0ZGRmYmFiODc5OThlNzdlNGE0NTNlMGZmODc5ODZkMmRiOCJ9
…-info-reports-plugin to v3.3.0 (googleapis#1104) [![WhiteSource Renovate](https://app.renovatebot.com/images/banner.svg)](https://renovatebot.com) This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [org.apache.maven.plugins:maven-project-info-reports-plugin](https://maven.apache.org/plugins/) ([source](https://togithub.com/apache/maven-project-info-reports-plugin)) | `3.2.2` -> `3.3.0` | [![age](https://badges.renovateapi.com/packages/maven/org.apache.maven.plugins:maven-project-info-reports-plugin/3.3.0/age-slim)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://badges.renovateapi.com/packages/maven/org.apache.maven.plugins:maven-project-info-reports-plugin/3.3.0/adoption-slim)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://badges.renovateapi.com/packages/maven/org.apache.maven.plugins:maven-project-info-reports-plugin/3.3.0/compatibility-slim/3.2.2)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://badges.renovateapi.com/packages/maven/org.apache.maven.plugins:maven-project-info-reports-plugin/3.3.0/confidence-slim/3.2.2)](https://docs.renovatebot.com/merge-confidence/) | --- ### Configuration 📅 **Schedule**: At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, click this checkbox. --- This PR has been generated by [WhiteSource Renovate](https://renovate.whitesourcesoftware.com). View repository job log [here](https://app.renovatebot.com/dashboard#github/googleapis/java-pubsub).
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
MessageAndConsumer toAck2 = pollQueueMessageAndConsumer(receiveQueue); | ||
toAck2.consumer().ack(); | ||
|
||
assertNotEquals(toAck1.message().getData(), toAck2.message().getData()); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@rajanya-google Can you help me understand the purpose of this test? I see two messages of different sizes getting published using a publisher with no batching configured, so each message is essentially published in its own batch of batch size 1, each message has a size greater than the compression threshold of 10 bytes, they will get compressed, then we read these messages and confirm that their data fields aren't equal (what's the point of that)?
Adding gRPC compression support.