Skip to content

Finagle 6.28.0

Compare
Choose a tag to compare
@kevinoliver kevinoliver released this 08 Mar 04:16
· 4224 commits to develop since this release

Runtime Behavior Changes

  • finagle-core: Weights are no longer supported by the load balancers. They are moved
    one level above and interpreted by a new module, the TrafficDistributor. This
    frees the balancers to have non-linear load metrics. It also changes the semantics
    of weights. They are now normalized by size of endpoints that share the same weight
    and interpreted proportional to offered load (however, they can still be though of,
    roughly, as multipliers for traffic). RB_ID=677416
  • finagle-core: The RequestSemaphoreFilter now sheds load by dropping the tail of the queue
    and failing it with a Failure.Restartable. Previously, the filter had an unbounded
    queue but now the default size is 0 (i.e. no queueing). The dropped requests are in
    turn requeued by Finagle clients with protocol support (e.g. Http, ThriftMux).
    RB_ID=696934
  • finagle-core: ServerBuilder.ServerConfig.BindTo, ServerBuilder.ServerConfig.MonitorFactory,
    and ServerBuilder.ServerConfig.Daemonize, are now private to com.twitter.finagle.builder. RB_ID=730865
  • finagle-memcachedx: Renamed to finagle-memcached.
  • finagle-stats: Standard deviation ("$statName.stddev") is no longer exported.
    RB_ID=726309 (follow up to RB_ID=717647)
  • finagle-serversets: namer/bind_latency_us stat now counts only
    time in name resolution, not service acquisition.
    namer/{dtabcache,namecache,nametreecache}/misstime_ms stats are
    no longer exported. RB_ID=730309

Breaking API Changes

  • finagle-core: c.t.f.jsr166y has been replaced with Java 7 API. finagle: Replace JSR166y
    with Java 7 API. RB_ID=720903
  • finagle-core: LoadBalancerFactory no longer takes endpoints with weights as
    per the decoupling mentioned in runtime changes. RB_ID=677416
  • finagle-core: RequestSemaphoreFilter.Param now accepts a com.twitter.concurrent.AsyncSemaphore
    instead of an integer representing the max concurrency. RB_ID=696934
  • finagle-core: removed c.t.f.asyncDns flag and c.t.f.SyncInetResolver; DNS resolution is
    now always asynchronous. RB_ID=734427
  • finagle-core: ClientBuilder.ClientConfig.DefaultParams, ClientBuilder.ClientConfig.DestName,
    ClientBuilder.ClientConfig.GlobalTimeout, ClientBuilder.ClientConfig.Daemonize, and
    ClientBuilder.ClientConfig.MonitorFactory are now private to com.twitter.finagle.builder.
    ClientBuilder.ClientConfig.Retries is now private to com.twitter. RB_ID=727245
  • finagle-httpx: Method no longer has an extractor. To access the name of
    custom methods, use toString. RB_ID=722913
  • finagle-mux: c.t.f.mux.exp.FailureDetector and c.t.f.mux.exp.sessionFailureDetector are
    moved out of exp package into mux package. RB_ID=725350