shinseongsu opened a new pull request, #932: URL: https://github.com/apache/httpcomponents-client/pull/932
https://issues.apache.org/jira/browse/HTTPCLIENT-2438 AsyncIoByteCounterExec kept the two Counter.Builder instances in fields and called tags() on them for every request. tags() adds to what the builder already has, so a tag that only some requests get (e.g. from a tagCustomizer) stayed on the builder and showed up on the counters of every request after it. The builders are now created in record() for each request, same as IoByteCounterExec does on the classic side. With a tagCustomizer that adds `only_for_a=yes` for /a only, sending GET /a (200) and then GET /b (404): Before: ``` test.response.bytes [method=GET, only_for_a=yes, status=200] test.response.bytes [method=GET, only_for_a=yes, status=404] <- /b ``` After: ``` test.response.bytes [method=GET, only_for_a=yes, status=200] test.response.bytes [method=GET, status=404] <- /b ``` Added this as a test in AsyncIoByteCounterExecTest. It fails on master and passes with the change. `./mvnw -pl httpclient5-observation -am verify` passes. This touches the same class as #920 but a different part, so it should merge cleanly either way. Could this go to 5.6.x as well? -- This is an automated message from the Apache Git Service. To respond to the message, please log on to GitHub and use the URL above to go to the specific comment. To unsubscribe, e-mail: [email protected] For queries about this service, please contact Infrastructure at: [email protected] --------------------------------------------------------------------- To unsubscribe, e-mail: [email protected] For additional commands, e-mail: [email protected]
