Skip to content

Finagle 21.8.0

Compare
Choose a tag to compare
@finaglehelper finaglehelper released this 14 Aug 17:57
· 436 commits to develop since this release

New Features

  • finagle-mysql: introduce newRichClient(dest: String, label: String) method, which removes the
    need for extra boilerplate to convert the destination String to a c.t.finagle.Name when
    specifying both dest and label in String form. c211bfbe
  • finagle-http, finagle-thriftmux: introduce client.withSni() API. Use this api to specify an
    SNI hostname for TLS clients. a8ec457b

Runtime Behavior Changes

  • finagle: Update Caffeine cache library to version 2.9.1 d9e551a3

  • finagle: Update ScalaCheck to version 1.15.4 145ab4aa

  • finagle-core: change ServiceClosedException to extend FailureFlags and to be
    universally retryable e621e5ff

  • finagle-http: remove the com.twitter.finagle.http.UseH2,
    com.twitter.finagle.http.UseH2CClients2, com.twitter.finagle.http.UseH2CServers and
    com.twitter.finagle.http.UseHttp2MultiplexCodecClient toggles. The configuration for
    c.t.finagle.Http.client and c.t.finagle.Http.server now default to using the HTTP/2 based
    implementation. To disable this behavior, use c.t.finagle.Http.client.withNoHttp2 and
    c.t.finagle.Http.server.withNoHttp2 respectively.

    Alternatively, new GlobalFlag's have been introduced to modify the default behavior of clients
    and servers that have not been explicitly configured, where
    the com.twitter.finagle.http.defaultClientProtocol
    and com.twitter.finagle.http.defaultServerProtocol flags can be set to HTTP/1.1 to modify
    the default client or server configuration, respectively. PHAB_ID=D625880`

  • finagle-netty4: Finagle now reuses Netty "boss" (or parent) threads instead of creating a new
    thread per server. Netty parent threads are servicing the server acceptor, a relatively
    lightweight component that listens for new incoming connections before handing them out to the
    global worker pool. 5e9998fc

  • finagle-http2: introduce optional parameter NackRstFrameHandling to enable or disable NACK
    conversion to RST_STREAM frames. 728aed03

  • finagle-thrift, finagle-thriftmux: clients may start reporting (correctly) lower success rate.
    Previously server exceptions not declared in IDL were erroneously considered as successes.
    The fgix also improves failure detection and thus nodes previously considered as healthy
    by failure accrual policy may be considered as unhealthy. 3bba41c6

Bug Fixes

  • finagle-core: Add BackupRequestFilter to client registry when configured. 56092e96
  • finagle-thrift, finagle-thriftmux: clients now treat server exceptions
    not declared in IDL as failures, rather than successes,
    and do not skip the configured response classifier for failure accrual.
    3bba41c6