{"push_id":824292776,"size":21,"distinct_size":21,"ref":"refs/heads/develop","head":"bf4b0ea8b4bb34f4cb98fa6da06723bc58635487","before":"cb429dc0c5df360061190c4922459f09b8558b70","commits":[{"sha":"b6f91799a6c73a0808bd4a6a7954bd6125750625","author":{"email":"afc5e40f7e0ce50d0caf1701580b337509dfc04f@twitter.com","name":"Daniel Schobel"},"message":"finagle-core: ignore consistently failing tests\n\nRB_ID=751473","distinct":true,"url":"https://api.github.com/repos/twitter/finagle/commits/b6f91799a6c73a0808bd4a6a7954bd6125750625"},{"sha":"276942670aa8bd4ef3588503004060a1c45b0a91","author":{"email":"57bd04edaad28bc28010cc36e2118e921bbe1779@twitter.com","name":"Chris Chen"},"message":"Make Zookeeper -client and -server usages explicit across source repo.\n\nProblem:\nThe current ZooKeeper jar is a monolithic artifact that contains client and\nserver classes. In order to make client and server usages clearer and prep\nfor a upcoming split of the artifact, we need to do some classification.\n\nSolution:\nCreate placeholder zookeeper-client and zookeeper-server targets. Make those\nusages explicit in build targets.\n\nResult:\nDependencies are more clear, and it will be easier to introduce split artifacts.\n\nRB_ID=751175","distinct":true,"url":"https://api.github.com/repos/twitter/finagle/commits/276942670aa8bd4ef3588503004060a1c45b0a91"},{"sha":"0214ef2eadf4f5d2fed0c784a2d23d380e3878d7","author":{"email":"07d2f916c3050f136d91c345c04c0fecd62adb94@pivotal.io","name":"Adrian Cole"},"message":"Removes zipkin annotation.duration\n\nThe OpenZipkin project dropped support for Annotation.duration. This\nfield was rarely used, and when used often incorrectly. Moreover, the\nzipkin query and web interfaces didn't support it. Dropping it\nimplicitly fixed bugs and confusion around the topic. This happened in\nzipkin 1.9, and finagle-zipkin is the last trace instrumentation library\nleft to adjust.\n\nSee https://github.com/openzipkin/zipkin/pull/717\n\nSigned-off-by: Daniel Schobel <dschobel@twitter.com>\n\nRB_ID=751986","distinct":true,"url":"https://api.github.com/repos/twitter/finagle/commits/0214ef2eadf4f5d2fed0c784a2d23d380e3878d7"},{"sha":"91b8808e02e508982123cb0785a163a0437d8388","author":{"email":"5fdc58b7f65707a973241b9267fb0fcc946d1efc@twitter.com","name":"Todd Segal"},"message":"[finagle-core, traffic] Allow libraries to configure defaults for LatencyCompensator. Add Twitter-Server-Internal override\n\n[Problem]\n\nLibraries cannot configure default settings for the LatencyCompensator module in the finagle stack client.\n\n[Solution]\n\nAdd a `DefaultOverride` for the LatencyCompensator that can be set once per-process. If multiple callers attempt to set the override, the second caller will receive 'false' and it is up to the caller to determine how to handle failure.\n\nRB_ID=750228","distinct":true,"url":"https://api.github.com/repos/twitter/finagle/commits/91b8808e02e508982123cb0785a163a0437d8388"},{"sha":"968e426aafd5fe96f3544585e79c68581d9f16a7","author":{"email":"2174a935518fb251cc3a1dfbb8671254ab2c5622@twitter.com","name":"Nik Shkrob"},"message":"finagle-benchmark: Move the thrift out to work around the nested object bug\n\nProblem\n\nDue to https://issues.scala-lang.org/browse/SI-2034, JMH doesn't work on scrooge-generated scala files after the service-per-endpoint patch.\n\nThe problem is the triple-nested objects introduced in the service-per-endpoint Scrooge patch. E.g.\n```\nobject Hello {\n  object Hi {\n    object Args {}\n  }\n}\n\nval args: Hello.Hi.Args = Hello.Hi.Args()\nprintln(args.getClass.getSimpleName) // throws InternalError: Malformed class name\n```\n\nSolution\n\nWork around the bug by moving thrift out of finagle-benchmark into a new sbt project finagle-benchmark-thrift.\n\nResult\n\nJMH only introspects classes in the current project, not the dependencies, so finagle-benchmark works.\n\nAlternative approach\n\nI've tried changing the outer 'object Hello' to a namespace. That doesn't work because it encloses implicit objects that must be in an enclosing object scope.\n\nRB_ID=752209","distinct":true,"url":"https://api.github.com/repos/twitter/finagle/commits/968e426aafd5fe96f3544585e79c68581d9f16a7"},{"sha":"a5d6bb30770993f677d57fad1ee3eae68510bf5a","author":{"email":"2174a935518fb251cc3a1dfbb8671254ab2c5622@twitter.com","name":"Nik Shkrob"},"message":"finagle: [docs, tiny] Fix newServiceIface usage in scaladoc\n\nProblem\n\nnewServiceIface takes a ServiceIface type param.\n\nSolution\n\nCorrect the usage in the comment.\n\nRB_ID=752200","distinct":true,"url":"https://api.github.com/repos/twitter/finagle/commits/a5d6bb30770993f677d57fad1ee3eae68510bf5a"},{"sha":"86d9b05dfd6480d3392d47565ba2955ef961ec6d","author":{"email":"242df34e329d43994dd4cde92d05ccdc67ecc765@twitter.com","name":"Moses Nakamura"},"message":"finagle-core: Stop recording transit latency and deadline budget for clients\n\nProblem\n\nFinagle records transit latency for clients, but only servers\ncare about it.\n\nSolution\n\nMove the transit latency stat out of StatsFilter and into\nServerStatsFilter. Handletime is also a server-specific stat,\nso moved that into ServerStatsFilter too, and deleted\nHandletimeFilter.  This has the added advantage of recording\ntransit latency at the same time we do handletime, which is one\nof the earliest points.\n\nThis review also handles some other miscellaneous cleanup,\nmaking no-allocation, testable, elapsed duration easier to use,\nadding tests for handletime, transit latency and deadline budget.\n\nResult\n\nFinagle services no longer export transit_latency_ms or\ndeadline_budget_ms for clients.  It's not useful for clients,\nso it's safe to remove it.\n\nRB_ID=751268","distinct":true,"url":"https://api.github.com/repos/twitter/finagle/commits/86d9b05dfd6480d3392d47565ba2955ef961ec6d"},{"sha":"0327caaf48cbc0787588edd068ed0efa7a2d4e61","author":{"email":"eff0e6b3b55c42f655c864be9b27028ce9b2d31b@twitter.com","name":"Vladimir Kostyukov"},"message":"finagle: Remove finagle-stress\n\nProblem\n`finagle-stress` is pretty dead and should be removed.\n\nSolution\nRemove `finagle-stress` and its the only one dependee (which is also pretty\ndead) - `caccie/cassie-stress`.\n\nResult\n1500 LOCs have been removed.\n\nRB_ID=752201","distinct":true,"url":"https://api.github.com/repos/twitter/finagle/commits/0327caaf48cbc0787588edd068ed0efa7a2d4e61"},{"sha":"7d46e514e01b077707e77bdb1fff376f741f76b4","author":{"email":"2174a935518fb251cc3a1dfbb8671254ab2c5622@twitter.com","name":"Nik Shkrob"},"message":"finagle-thrift: Fix thrift server construction for extended services\n\nProblem\n\nGiven a thrift service ExtendedEcho that extends service Echo, constructing a service with\n```\nThrift.serveIface(addr, new ExtendedEcho.FutureIface { ... } )\n```\nproduces an Echo server, i.e. a server that's not aware of ExtendedEcho's methods. The symptom is that the server throws 'TApplicationException: Invalid method name' when called with the methods from ExtendedEcho. The cause is a bug in reflection code (the constructor takes ExtendedEcho[Future], not ExtendedEcho$FutureIface).\n\nSolution\n\nUse the correct class when searching for the constructor.\n\nRB_ID=752469","distinct":true,"url":"https://api.github.com/repos/twitter/finagle/commits/7d46e514e01b077707e77bdb1fff376f741f76b4"},{"sha":"91bd4c417000e55c8161eac02326dd17b3230930","author":{"email":"afc5e40f7e0ce50d0caf1701580b337509dfc04f@twitter.com","name":"Daniel Schobel"},"message":"finagle-mux: fix flaky request draining test\nProblem\n\nMux's ClientTest is asserting properties against a global log which\npicks up messages beyond the test events we want to inspect. This\nmakes the test flaky.\n\nSolution\n\nRewrite based on metrics and a local SR instance.\n\nRB_ID=752850","distinct":true,"url":"https://api.github.com/repos/twitter/finagle/commits/91bd4c417000e55c8161eac02326dd17b3230930"},{"sha":"47a941ef4cf4d0d272826b719ffb3a9f817851da","author":{"email":"afc5e40f7e0ce50d0caf1701580b337509dfc04f@twitter.com","name":"Daniel Schobel"},"message":"make 2.11.7 the default scala version for csl OSS\nMake 2.11.7 the default scala version for csl OSS and bump patch\nlevel of 2.10.\n\nRB_ID=752868","distinct":true,"url":"https://api.github.com/repos/twitter/finagle/commits/47a941ef4cf4d0d272826b719ffb3a9f817851da"},{"sha":"4bfaf976c2fd8c68c798eed1472fbdf530fc6859","author":{"email":"b04c639163746ce7786a3360b49c22eb4ff077d4@twitter.com","name":"Jeremy Cloud"},"message":"finagle.mux: make FailureDetector controllable via flags again\n\nProblem:\n\nWhen FailureDetector.DarkModeConfig was made the default, it was done in a way that broke the ability to overwrite the default behavior via the `com.twitter.finagle.mux.sessionFailureDetector` flag (the flag simply doesn't do anything now).\n\nSolution:\n\nAdded \"dark\" as a potential flag value, set that as the default, and switched the default `Param` value back to `GlobalFlagConfig`.  This keeps `DarkModeConfig` as the default, but allows the default to be changed.\n\nRB_ID=751701","distinct":true,"url":"https://api.github.com/repos/twitter/finagle/commits/4bfaf976c2fd8c68c798eed1472fbdf530fc6859"},{"sha":"d62ffa1e9a925a96cbdc5608ebf3b9e7e5de86b4","author":{"email":"772fe1f374d46bda4e68867185977c963227ef8e@twitter.com","name":"Ruben Oanta"},"message":"finagle-core: Remove weights from c.t.f.util.Ring\n\nProblem\n\nWe removed weights from the load balancer in a previous patch,\nbut there are some residual references to weights that needed\nto be cleaned up.\n\nSolution\n\nRemove weights from c.t.f.util.Ring which is used by aperture.\nThis simplifies the construction of the aperture ring.\n\nRB_ID=752149","distinct":true,"url":"https://api.github.com/repos/twitter/finagle/commits/d62ffa1e9a925a96cbdc5608ebf3b9e7e5de86b4"},{"sha":"84c9907bd45e2a4444592a95c642e91faaf0e747","author":{"email":"53b8cfe4a97d546341cbef717c58a56a55287c83@twitter.com","name":"Neuman Vong"},"message":"Rename finagle-httpx to finagle-http\n\nProblem / Solution\n\nRename finagle-httpx to finagle-http.\n\nRB_ID=751876\nTBR=true\nUSER_HOOK_ARGS=--i-am-evil -x .hooks/PRESUBMIT/validate-config-ini macaw-roi/.hooks/PRESUBMIT macaw-swift/.hooks/PRESUBMIT/check-swoop","distinct":true,"url":"https://api.github.com/repos/twitter/finagle/commits/84c9907bd45e2a4444592a95c642e91faaf0e747"},{"sha":"80e9287dda278902b170aeebd6ca6c83df4dfe97","author":{"email":"eff0e6b3b55c42f655c864be9b27028ce9b2d31b@twitter.com","name":"Vladimir Kostyukov"},"message":"util-core: Remove deprecated methods on Time and Duration\n\nRB_ID=751771\nTBR=true","distinct":true,"url":"https://api.github.com/repos/twitter/finagle/commits/80e9287dda278902b170aeebd6ca6c83df4dfe97"},{"sha":"490f6f8e88dab2486c7f584659ca118f68c6f872","author":{"email":"a906a0ae6418bb559d85a1f38321c62ea20a3dd5@gmail.com","name":"Alexandre Martins"},"message":"Adding Globo.com to the list of adopters.\n\nSigned-off-by: Travis Brown <tbrown@twitter.com>\n\nRB_ID=753204","distinct":true,"url":"https://api.github.com/repos/twitter/finagle/commits/490f6f8e88dab2486c7f584659ca118f68c6f872"},{"sha":"a7e51dd119046c5c04c3cb5b6c79a16fc66edf45","author":{"email":"eff0e6b3b55c42f655c864be9b27028ce9b2d31b@twitter.com","name":"Vladimir Kostyukov"},"message":"finagle: Remove finagle-swift\n\nRB_ID=752826\nTBR=true","distinct":true,"url":"https://api.github.com/repos/twitter/finagle/commits/a7e51dd119046c5c04c3cb5b6c79a16fc66edf45"},{"sha":"eb9982850db5d3a639e0e85370abb185867f843b","author":{"email":"24a54edd064a4908b8cc046e2ca1a8dcab73c61c@twitter.com","name":"Kevin Oliver"},"message":"finagle-core: RetryPolicy.tries now uses jittered backoffs\n\nMotivation\n\nThe simplest way of specifying a `RetryPolicy` via `ClientBuilder` is\n`ClientBuilder.retries` and this retry policy does not wait at all in\nbetween retries. This can have negative impacts on the downstream\nservice should it already be struggling.\n\nSolution\n\nUse a jittered backoff starting at 5 milliseconds and then using\nrandom backoff between 5 millis and 3x the previous backoff for the\nfollowing retries. These backoffs are capped at 200 milliseconds.\n\nThis is used by callers to `RetryPolicy.tries` which impacts\n`ClientBuilder.retries` and `RetryingService.tries`.\n\n`Backoff` was moved into its own file and adding some additional\ncapabilities such as being able to specify a maximum for `linear`\nand `exponential` as well as introducing two new jittered backoffs,\n`exponentialJittered` and `decorrelatedJittered`.\n\nResult\n\nBetter behaving clients should lead to more systemic resilience.\n\nRB_ID=752629","distinct":true,"url":"https://api.github.com/repos/twitter/finagle/commits/eb9982850db5d3a639e0e85370abb185867f843b"},{"sha":"faf04794207a0de01cdf6ca1e63dec62717e71b8","author":{"email":"deed3ca44874b93e1ee943b57059ab17d1a00b94@twitter.com","name":"Jillian Crossley"},"message":"finagle/finagle-core:: Revived FailureAccrualFactory must satisfy a request before accepting more\n\nProblem\nA service revived after failing can immediately accept many requests.\nIt is more likely to fail these requests than a healthy service; it\nshould be conservative after revival.\n\nSolution\nAfter being revived, a FailureAccrualFactory enters a\n'probing' state wherein it must successfully satisfy a request before\naccepting more. If the request fails, it waits for the next 'markDeadFor'\nperiod.\n\nRB_ID=747541","distinct":true,"url":"https://api.github.com/repos/twitter/finagle/commits/faf04794207a0de01cdf6ca1e63dec62717e71b8"},{"sha":"b010e5bc59cadcfbf3c2648099a3ef64d437c2e8","author":{"email":"afc5e40f7e0ce50d0caf1701580b337509dfc04f@twitter.com","name":"Daniel Schobel"},"message":"finagle-core: disable highres timer\n\nReplace default highres timer instance with default hashwheel timer so that context is preserved.\n\nRB_ID=753966","distinct":true,"url":"https://api.github.com/repos/twitter/finagle/commits/b010e5bc59cadcfbf3c2648099a3ef64d437c2e8"}]}