Finagle v22.7.0 Release Notes
-
- finagle-thrift: Changing visibility of InputBuffer and OutputBuffer from [finagle] to [twitter].
PHAB_ID=D938475
🆕 New Features
* 🔧 finagle-core: Introduce panic mode in load balancers. Configure the threshold for panic mode to start using `withLoadBalancer.panicMode`. ``PHAB_ID=D879034`` * finagle-core: Provide `ServerParamsInjector`, a class that will be service-loaded at run-time by Finagle servers, and will allow generic configuration of all sets of parameters. ``PHAB_ID=D897484`` * finagle-memcached: Add new function, `newLoadBalancedTwemcacheClient`, to create a TwemcacheClient that doesn't use a partitioning service. ``PHAB_ID=D911789` 🐛 Bug Fixes
- finagle-core: fix issue where
Trace.traceLocal
andTrace.traceLocalFuture
nested traces mistakenly annotate to the parent span.PHAB_ID=D912760
💥 Breaking API Changes
* 🚚 finagle-core: Remove unused `DeterministicAperture` along with pathways to use weight-unaware aperture loadbalancers. ``PHAB_ID=D933405`` * finagle-base-http: Methods for getting/setting `Accept`, `Authorization`, `Host`, `Referer`, `User-Agent`, `X-Forwarded-For` headers were moved from `c.t.f.http.Message` class to `c.t.f.http.Request` as these headers are only valid on requests and not on responses. Methods for getting/setting `Location`, `Retry-After`, `Server`, and `WWW-Authenticate` headers were moved from `c.t.f.http.Message` class to `c.t.f.http.Response` as they are only valid on responses and not on requests. * ⚡️ finagle-core: Update OffloadFilter.Param API to encourage recommended construction. ``PHAB_ID=D882210`` * finagle-core: `Trace.recordLocalSpan` is `private[this]` and no longer `protected`. ``PHAB_ID=D912760`` * finagle-core: "ServiceFactory#status" is abstract and requires implementation in the inherited classes. ``PHAB_ID=D933288`` * finagle-core: `StackTransformer` has been renamed to `ServerStackTransformer` and the symmetric client equivalent (`ClientStackTransformer`) has been added. For those using the older `StackTransformer` API you will both need to change the code (fix the extends) __and__ rename the META-INF file from `resources/META-INF/services/com.twitter.finagle.StackTransformer` to `resources/META-INF/services/com.twitter.finagle.ServerStackTransformer` in order to have your transformer continue to service-load correctly. ``PHAB_ID=D937634`` ⚙ Runtime Behavior Changes
0️⃣ finagle-core: Changed the default implementation for random and deterministic aperture load balancers to weighted aperture.
PHAB_ID=D867878
finagle-partitioning: ThriftCustomPartitioningServices now allow fanning out the same request to multiple partitions.
PHAB_ID=D882370
finagle-core: Rename the counter metric
loadbalancer/max_effort_exhausted
toloadbalancer/panicked
.PHAB_ID=D881529
⬆️ finagle: Upgrade to Netty 4.1.76.Final and netty-tcnative 2.0.51.Final.
PHAB_ID=D886019
⚡️ finagle: Update Jackson library to version 2.13.3
PHAB_ID=D906005
finagle: Bump version of lz4-java to 1.8.0.
PHAB_ID=D905411
⬆️ finagle: Upgrade to Netty 4.1.78.Final and netty-tcnative 2.0.53.Final to support tls tracing for finagle in Pixie. The Pixie changes aren't complete yet, but upgrading netty is a prerequisite for that.
PHAB_ID=D916996
`
- finagle-thrift: Changing visibility of InputBuffer and OutputBuffer from [finagle] to [twitter].