Changelog
1.10.0 (2026-04-10)
Fixes
- Use power-of-two random choices for channel selection to avoid thundering herd
1.9.2 (2026-03-21)
Fixes
- Use daemon threads for grpc-gcp background executors by default
Features
- Support of Unbind manual affinity keys after terminal calls
1.9.1 (2025-12-27)
Fixes
- Fix race for metrics values (#228)
1.9.0 (2025-12-15)
Features
- Set channelID in call options for downstream interceptors (#225)
1.8.0 (2025-12-12)
Features
- End to end fallback (#221)
- Migrate opencensus metrics to opentelemetry (#222)
1.7.0 (2025-09-23)
Features
- Dynamic channel pool scaling (#194)
1.6.1 (2024-06-17)
Features
- Log manual affinity and disabling affinity (#177)
1.6.0 (2024-05-09)
Features
- Affinity keys cleanup. Allow setting keys lifetime (#174)
- Manual affinity via call options or context (#175)
1.5.0 (2023-11-08)
Features
- Add disable affinity feature (#167)
1.4.1 (2023-01-30)
Fixes
- Support common labels for multi-endpoint metrics (#160)
1.4.0 (2023-01-27)
Features
- MultiEndpoint metrics (#158)
1.3.2 (2022-12-02)
Fixes
- Fix race condition when running and adding state change callbacks. (#155)
1.3.1 (2022-10-24)
Fixes
- MultiEndpoint: allow specifying protocol in the endpoint. (#151)
1.3.0 (2022-10-12)
Features
- Add switching delay to GcpMultiEndpointChannel. (#145)
- Look for a multi-endpoint specified in gRPC context. (#149)
1.2.0 (2022-07-18)
Features
- multi-endpoint (#135).
- round-robin for bind calls (#127).
- minSize of the channel pool (#134).
- detailed logs (#133).
- log metrics (#131).
- map a key to current channel when bound call arrives but no mapping for the
key exists (#132).
- consolidate channel pool config in the GcpChannelPoolOptions (#109).
1.1.0 (2021-07-20)
Features
- improve bind/unbind logic.
- improve getChannelRef performance for calls without channel affinity.
- more accurate affinity counts.
- allow to rebind a key to another channel and adjust affinity counts accordingly.
1.0.0 (2021-06-11)
Features
- gRPC channel pool with configurable channel affinity.
- provide a channel with minimum active streams for a new call.
- an optional fallback from non-ready channel to a ready channel.
- an option to detect unresponsive channels.
Except as otherwise noted, the content of this page is licensed under the Creative Commons Attribution 4.0 License, and code samples are licensed under the Apache 2.0 License. For details, see the Google Developers Site Policies. Java is a registered trademark of Oracle and/or its affiliates.
Last updated 2026-06-19 UTC.
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Missing the information I need","missingTheInformationINeed","thumb-down"],["Too complicated / too many steps","tooComplicatedTooManySteps","thumb-down"],["Out of date","outOfDate","thumb-down"],["Samples / code issue","samplesCodeIssue","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2026-06-19 UTC."],[],[]]