gRPC v1.32.1 Release Notes

Release Date: 2020-09-10 // almost 2 years ago
  • API Changes

    • 🚀 api: Removed deprecated method ChannelBuilder.blockingExecutor() (#7242). There should not be any users as it was deprecated the first release it was available and was renamed offloadExecutor().
    • grpclb: Make ATTR_LB_ADDRS public (#7230). This is necessary to configure grpclb from a custom NameResolver

    🆕 New Features

    • xds: perform header matching on concatenated multi-valued headers (#7215)
    • xds: add header matching special cases for hiding/exposing some gRPC headers (#7224). The only gRPC header available for header matching is “content-type”.
    • xds: support load reporting all clusters option and fix actual report interval measurement (#7209). If the LRS response enables send_all_clusters, the client side will report loads for all clusters it is currently using.

    🐛 Bug Fixes

    • 🛠 core, alts, cronet: Fix ByteBuffer covariant method usages (#7349). When built with Java 9+, internal usages of ByteBuffer APIs may cause runtime breakage for dependent applications running with Java 8. This is fixed now.
    • 🔧 core: Fixed a bug that RPC may hang when hedging is enabled with a throttling configuration (#7337)
    • netty: The environment variable GRPC_EXPERIMENTAL_AUTOFLOWCONTROL=false will now disable the BDP monitoring introduced in v1.30.0. This is intended to help diagnose a “too_many_pings” compatibility issue and will be removed once it is resolved. If you need to use the variable, please file an issue
    • benchmarks: Use correct classpath for scripts (the ones in the bin/ folder of the tar/zip), fixing NoClassDefFoundErrors. The classpath was probably broken starting in v1.30.
    • ⚡️ xds: routing policy should immediately update a picker that selects base on updated config (#7233)


    • ⬆️ netty: Upgrade to Netty 4.1.51 and tcnative 2.0.31
    • 👍 android, cronet: Drop support for android SDK versions older than 16 (#7253). The minimum supported Android SDK version is 16.