Hello Alexey Serbin, Kudu Jenkins, Todd Lipcon, I'd like you to reexamine a change. Please visit
http://gerrit.cloudera.org:8080/11819 to look at the new patch set (#3). Change subject: rpc-test: fix TestClientConnectionMetrics ...................................................................... rpc-test: fix TestClientConnectionMetrics Every now and then, this test would fail with: rpc-test.cc:542: Failure Expected: (dump_resp.outbound_connections(0).outbound_queue_size()) > (0), actual: 0 vs 0 Unfortunately, the test would go one to crash (and trigger a TSAN warning) due to the lack of proper cleanup in the event of an ASSERT failure. I've fixed that in this patch. I also tried to address the root of the test flakiness (that the outbound transfer queue contains at least one element), but I couldn't find a good way to do it. Blocking the server reactor thread has no effect on client-side queuing. And we can't block the client reactor thread outright because DumpRunningRpcs runs on it. Some of this is touched on in the original code review[1] that committed the test. Having given up, I wrapped the whole thing in an ASSERT_EVENTUALLY. It's ham-fisted for sure, but it seems to work: without it, the test fails every 100-200 runs on my laptop, and with it I can't get it to fail at all. I also looped it 1000 times in TSAN mode with 8 stress threads and didn't see any failures. I don't understand the krpc subsystem very well, so if there's a better way, I'm all ears. 1. https://gerrit.cloudera.org/c/9343/ Change-Id: I9c565b80bdca435d18787c7df0ec992728363980 --- M src/kudu/rpc/rpc-test.cc 1 file changed, 45 insertions(+), 42 deletions(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/19/11819/3 -- To view, visit http://gerrit.cloudera.org:8080/11819 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: newpatchset Gerrit-Change-Id: I9c565b80bdca435d18787c7df0ec992728363980 Gerrit-Change-Number: 11819 Gerrit-PatchSet: 3 Gerrit-Owner: Adar Dembo <a...@cloudera.com> Gerrit-Reviewer: Adar Dembo <a...@cloudera.com> Gerrit-Reviewer: Alexey Serbin <aser...@cloudera.com> Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Todd Lipcon <t...@apache.org>