Releases: grpc/grpc-java
Releases · grpc/grpc-java
v1.51.0
grpc-xds starting with 1.51.0 had a regression where resources might stop receiving updates. The trigger could happen hours or days after the binary had started. xDS users should avoid this release and use 1.50.x until patch releases with the fix are available. #9809
Bug Fixes
- grpclb: Fix a debug logging message which incorrectly logged loadbalancer addresses under backend addresses. (#9602)
New Features
- okhttp: okhttp server now supports maxConnectionAge and maxConnectionAgeGrace configuration for improved connection management. (#9649)
Behavior Changes
- netty: switch default cumulation strategy from MERGE to ADAPTIVE. When accumulating incoming network data, Adaptive cumulator dynamically switches between MERGE and COMPOSE strategies to minimize the amount of copying while also limiting per-buffer overhead. (#9558)
Acknowledgements
v1.50.2
Bug fixes
gcp-observability: Supports period(.) in the service name part of regular expression for a fully-qualified method to accept "package.service"
v1.50.1
v1.50.0
New Features
- okhttp: Added connection management features to okhttp server, including maxConnectionIdle(), permitKeepAliveTime(), and permitKeepAliveWithoutCalls() (#9494, #9544)
- binder: Add
SecurityPolicies
for checking device owner/profile owner (#9428)
API Changes
- api: Add LoadBalancer.acceptResolvedAddresses() (#9498). The method is like
handleResolvedAddresses()
but returns aboolean
of whether the addresses and configuration were accepted. Not accepting the update triggers the NameResolver to retry after a delay. We are not yet encouraging migration to this method, as there is still a second future API change - core: add CallOptions to CallCredentials.RequestInfo (#9538)
Bug Fixes
- auth: Fix AppEngine failing while retrieving access token when instantiating a blocking stub using AppEngineCredentials (#9504)
- core: Ensure that context cancellationCause is set (#9501)
- core: Update outlier detection max ejection logic to allow exceeding the limit by one, to match Envoy. (#9489, #9492)
- core: outlier detection to honor min host request volume (#9490)
- okhttp: Add timeout for HTTP CONNECT proxy handshake (#9586)
- xds: ringhash policy in TRANSIENT_FAILURE should not attempt connecting when already in connecting (#9535). With workloads where most requests have the same hash, ring hash should behave more like pick-first of slowly trying backends
Dependencies
- netty: upgrade netty from 4.1.77.Final to 4.1.79.Final and tcnative from 2.0.53 to 2.0.54 (#9451)
Acknowledgements
v1.47.1
Bug Fixes
- core: Fix retry causing memory leak for canceled RPCs. (#9416)
Behavior Changes
- xds: Remove permanent error handling in LDS update in XdsServerWrapper. Also notify
OnNotServing
onStatusListener
when the delegated server initial start fails. (#9276, #9279)
Dependencies
- Bump protobuf to 3.19.6
v1.46.1
Behavior Changes
- xds: Remove permanent error handling in LDS update in XdsServerWrapper. Also notify
OnNotServing
onStatusListener
when the delegated server initial start fails. (#9278, #9280) - xds: Protect xdstp processing with federation env var. If the xds server uses xdstp:// resource names it was possible for federation code paths to be entered even without enabling the experimental federation support. This is now fixed and it is safe for xds servers to use xdstp:// resource names. (#9190)
Dependencies
- Bump protobuf to 3.19.6
v1.45.2
Bug Fixes
- xds: fix bugs in ring-hash load balancer picking subchannel behavior per gRFC. The bug may cause connection not failing over from
TRANSIENT_FAILURE
status. (#9085) - xds: Protect xdstp processing with federation env var. If the xds server uses xdstp:// resource names it was possible for federation code paths to be entered even without enabling the experimental federation support. This is now fixed and it is safe for xds servers to use xdstp:// resource names. (#9190)
Behavior Changes
- xds: change
ring_hash
LB aggregation rule to better handle transient_failure channel status (#9084)
Dependencies
- Bump protobuf to 3.19.6
- bom: Exclude grpc-observability. The module does not exist in 1.45.x. Should be a noop (#9122)
v1.44.2
Bug Fixes
- netty: Fixed incompatibility with Netty 4.1.75.Final that caused COMPRESSION_ERROR (#9004)
- xds: Fix LBs blindly propagating control plane errors (#9012). This change forces the use of UNAVAILABLE for any xDS communication failures, which otherwise could greatly confuse an application. This is essentially a continuation of the fix in 1.45.0 for XdsNameResolver, but for other similar cases
- xds: Fix XdsNameResolver blindly propagates control plane errors (#8953). This change forces the use of UNAVAILABLE for any xDS communication failures, which otherwise could greatly confuse an application
- xds: fix bugs in ring-hash load balancer picking subchannel behavior per gRFC. The bug may cause connection not failing over from
TRANSIENT_FAILURE
status. (#9085)
Behavior Changes
- xds: change
ring_hash
LB aggregation rule to better handle transient_failure channel status (#9084)
Dependencies
- Bump protobuf to 3.19.6