github grpc/grpc-java v1.54.0

latest releases: v1.67.0, v1.66.0, v1.63.2...
18 months ago

New Features

  • xds: Add weightedRoundRobin LB policy. The WRR policy allows picking the subchannel by weight based on the metrics feedback from the backend using ORCA API. See gRFC A58: Weighted Round Robin LB Policy. (#9873)
  • census: Add per call latency metric which is latency across all attempts (#9906)
  • Generated code now has an interface named AsyncService that the <service-name>ImplBase class implements. This allows you to provide your own base class when used with the static <service-name>Grpc.bindService(AsyncService) method(#9688).

Examples

  • Add examples for gcp observability (#9967)

Bugfixes

  • rls:Fix throttling in route lookup where success and error metrics had been inverted (b/262779100) (#9874)
  • protobuf: update external javadoc link (#9890)
  • core: fix outlier detection default ejection time (#9889)
  • xds: deletion only to watchers of same control plane (#9896)
  • api: Target scheme is now properly case insensitive (#9899). NameResolverProviders, however, are expected to return the scheme used for registration in lower-case
  • api: ForwardingServerCall now forwards getMethodDescriptor(). Previously only SimpleForwardingServerCall forwarded the method

Behavior Changes

  • xds:Allow a cluster’s sum of weights to exceed the maximum signed integer up to a limit of max unsigned integer (#9864)
  • grpclb: no SRV lookup for "metadata.google.internal."

Improvements

  • xds, orca: Allow removing OobLoadReportListener from a subchannel in OrcaOobUil. (#9881)
  • services: ORCA API change to allow recording QPS in MetricRecorder and CallMetricRecorder. (#9866)
  • Move name resolution retry from managed channel to name resolver (take #2) (#9812)
  • Rename AbstractXdsClient to ControlPlaneClient (#9934)
  • all: fix build with errorprone 2.18 (#9886)
  • build: allow Java 11+ to use modern error prone
  • errorprone: enable UnnecessaryAnonymousClass (#9927)
  • core: add logger to OutlierDetectionLoadBalancer (#9880)
  • census: add trace annotation to report received message sizes (#9944)
  • gcp-observability: emit latency and payload size metrics by default when monitoring is enabled (#9893)
  • gcp-observability: add trace information like TraceId and SpanId in logs for log correlation when both logging and traces are enabled (#9963)
  • gcp-observability: close() will take longer, to ensure metrics and traces are flushed (#9972)
  • gcp-observability: update status code type in logs to Google RPC code instead of an integer (#9959)
  • gcp-observability: retain default opencensus-task identifier even when custom labels are specified in the configuration (#9982)
  • Build Improvements (#9855)
  • Fixes MethodDescriptor java documentation (#9860)
  • api: forward getSecurityLevel on PartialForwardingServerCall (#9912)
  • Updating ServerInterceptors.java to support different marshallers for Request and Response messages. (#9877)

API stabilizations

  • Stabilize method ServerBuilder.intercept which had previously been marked experimental. (#9894)
  • api:stabilize offloadExecutor usage in ManagedChannelBuilder and NameResolver. (#9931)

Dependencies

  • netty:Upgrade Netty from 4.1.79 to 4.1.87, tcnative from 2.0.54 to 2.0.56 (#9784)
  • gcp-observability: Transitive gRPC components now have the same gRPC version
  • gcp-observability : Google cloud logging updated to 3.14.5

Acknowledgements

@benjaminp
@s-matyukevich
@Faqa
@antechrestos
@carl-mastrangelo
@ioanbsu

Don't miss a new grpc-java release

NewReleases is sending notifications on new releases.