gRPC Java 1.72.0 Release Notes 
<https://github.com/grpc/grpc-java/releases/tag/v1.72.0>

*API Changes*

   - util: Remove deprecated method GracefulSwitchLb.switchTo() 
   (f207be39a). It is rarely used outside of gRPC. The configuration is passed 
   as lb policy configuration instead
   - xds: Add support for custom per-target credentials on the transport 
   (#11951) (1958e4237)
   - xds: Explicitly set request hash key for the ring hash LB policy 
   (892144dca)

*Bug Fixes*

   - core: Apply ManagedChannelImpl's updateBalancingState() immediately 
   (ca4819ac6)
   - xds: Fix cluster selection races when updating config selector 
   (d82613a74)
   - otel: Fix span names as per the A72 gRFC changes (#11974) (94f8e9369)
   - xds: ClusterResolverLoadBalancer handle update for both resolved 
   addresses and errors via ResolutionResult (#11997) (868178651)

*Improvements*

   - netty: Avoid allocating an exception on transport shutdown. This 
   reduces allocation rate for connection-heavy workloads/load testing 
   (a57c14a51)
   - servlet: Set an explicit description for CANCELLED status (#11927) 
   (fca1d3cf4)
   - xds: [gRFC A74 xDS Config 
   Tears](https://github.com/grpc/proposal/blob/master/A74-xds-config-tears.md) 
   implementation in the XdsNameResolver (e80c19745). While there is more 
   remaining, users may already see reduced latency when resources are 
   replaced. For example, if changing a route from one backend service to 
   another, RPCs may see less latency during the transition
   - core: Log any exception during channel panic because of exception 
   (3961a923a). This prevents the exception from propagating up the stack on 
   an arbitrary thread. Such exceptions are rarely interesting. Instead, the 
   exception that caused the channel panic is the important one, and RPCs will 
   still fail with its details
   - util: Graceful switch to new LB when leaving CONNECTING (2e260a4bb). 
   Previously when using xDS and the configuration changes the LB policy, the 
   old LB policy is used until the new one is READY. Now the old LB policy is 
   used until the new policy becomes READY, TRANSIENT_FAILURE, or IDLE
   - core: Use java.time.Time.getNano directly in InstantTimeProvider. 
   Previously reflection was used which would confuse R8 full mode (#11977) 
   (7507a9ec0)
   - core: Avoid cancellation exceptions when notifying watchers that 
   already have their connections cancelled (#11934) (350f90e1a)
   - rls: allow maxAge in RLS config to exceed 5 minutes if staleAge is 
   set. Previously, the limit was 5 minutes, which isn't enough for some gRPC 
   clients (#11931) (c340f4a2f)
   - xds: avoid unnecessary dns lookup for CIDR addresses (#11932) 
   (602aece08)
   - netty: Swap to UniformStreamByteDistributor (#11954) (2f52a0036). gRPC 
   will no longer observe the HTTP/2 priorities, which were not used directly 
   by gRPC and deprecated in RFC 9113
   - core: Avoid Set.removeAll() when passing a possibly-large List 
   (#11994) (666136b4b)
   - stub: trailersFromThrowable() metadata should be copied (#11979) 
   (a6e1c1f09)

*New Features*

   - xds: xDS-based HTTP CONNECT configuration (#11861) (12197065f)
   - netty: Per-rpc authority verification against peer cert subject names. 
   Overriding transport authority at rpc time is only allowed when using 
   TlsChannelCredentials. The per-rpc authority verification feature is 
   guarded by the environment variable GRPC_ENABLE_PER_RPC_AUTHORITY_CHECK in 
   this release. When this is false or not set, the rpc will not fail when the 
   authority verification fails but a warning will be logged. In a subsequent 
   release the usage of this environment variable will be removed and RPCs 
   will start failing if the authority doesn't match the peer certificate 
   names. The environment variable is temporary; if you are depending on the 
   existing insecure behavior, please file an issue (#11724) (cdab410b8)


*Thanks to*@panchenko
@emmanuel-ferdman
@JoeCqupt

-- 
You received this message because you are subscribed to the Google Groups 
"grpc.io" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To view this discussion visit 
https://groups.google.com/d/msgid/grpc-io/a0789ff4-23e0-4506-ab4c-9b1ea2e31420n%40googlegroups.com.

Reply via email to