Sourced from google.golang.org/grpc's releases.
Release 1.80.0
Behavior Changes
- balancer: log a warning if a balancer is registered with uppercase letters, as balancer names should be lowercase. In a future release, balancer names will be treated as case-insensitive; see #5288 for details. (#8837)
- xds: update resource error handling and re-resolution logic (#8907)
- Re-resolve all
LOGICAL_DNSclusters simultaneously when re-resolution is requested.- Fail all in-flight RPCs immediately upon receipt of listener or route resource errors, instead of allowing them to complete.
Bug Fixes
- xds: support the LB policy configured in
LOGICAL_DNScluster resources instead of defaulting topick_first. (#8733)- credentials/tls: perform per-RPC authority validation against the leaf certificate instead of the entire peer certificate chain. (#8831)
- xds: enabling A76 ring hash endpoint keys no longer causes EDS resources with invalid proxy metadata to be NACKed when HTTP CONNECT (gRFC A86) is disabled. (#8875)
- xds: validate that the sum of endpoint weights in a locality does not exceed the maximum
uint32value. (#8899)
- Special Thanks:
@​RAVEYUS- xds: fix incorrect proto field access in the weighted round robin (WRR) configuration where
blackout_periodwas used instead ofweight_expiration_period. (#8915)
- Special Thanks:
@​gregbarasch- xds/rbac: handle addresses with ports in IP matchers. (#8990)
New Features
- ringhash: enable gRFC A76 (endpoint hash keys and request hash headers) by default. (#8922)
Performance Improvements
- credentials/alts: pool write buffers to reduce memory allocations and usage. (#8919)
- grpc: enable the use of pooled write buffers for buffering HTTP/2 frame writes by default. This reduces memory usage when connections are idle. Use the WithSharedWriteBuffer dial option or the SharedWriteBuffer server option to disable this feature. (#8957)
- xds/priority: stop caching child LB policies removed from the configuration. This will help reduce memory and cpu usage when localities are constantly switching between priorities. (#8997)
- mem: add a faster tiered buffer pool; use the experimental mem.NewBinaryTieredBufferPool function to create such pools. (#8775)
397e45e
Change version to 1.80.0 (#8948)64ebf0a
Cherry-pick #8997 to
v1.80.x (#9027)e45ed24
xds/rbac: add additional handling for addresses with ports (#8990)
(#9022)c78d26e
Cherry-pick #8957 to
v1.80.x (#9007)bd7cd3c
grpc: enforce strict path checking for incoming requests on the server
(#8987)b6597b3
xds/clusterimpl: use xdsConfig for updates and remove redundant fields
from L...1d4fa8a
xds: change cdsbalancer to use update from dependency manager (#8907)8f47d36
attributes: Replace internal map with linked list (#8933)22e1ee8
xds: add panic recovery in xdsclient resource unmarshalling. (#8895)7136e99
credentials/alts: Pool write buffers (#8919)