Zoltan Martonka has posted comments on this change. ( http://gerrit.cloudera.org:8080/22867 )
Change subject: KUDU-3665 Send no-op heartbeat operations batched PART1 ...................................................................... Patch Set 9: I realized this is not the optimal design to address the problem. Since the main problem is not the network, but the large number of tiny context switches, we should address it on both the receiving and sending ends, not just the receiving end. Instead of each heartbeater having its own timer, there should be one timer per host, which handles all heartbeat messages belonging to that host. This would prevent messages from sitting in the buffer and allow the old writing logic to be restored. The only negative performance impact would be that when a periodic heartbeat detects it actually needs to send changes, it has to schedule a callback (so it won’t hold up the multi_raft_batcher thread) instead of doing it immediately. To my current understanding, this should occur rarely and its impact should be negligible. I will change things to work this way and measure again. -- To view, visit http://gerrit.cloudera.org:8080/22867 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: Ie92ba4de5eae00d56cd513cb644dce8fb6e14538 Gerrit-Change-Number: 22867 Gerrit-PatchSet: 9 Gerrit-Owner: Zoltan Martonka <[email protected]> Gerrit-Reviewer: Abhishek Chennaka <[email protected]> Gerrit-Reviewer: Alexey Serbin <[email protected]> Gerrit-Reviewer: Attila Bukor <[email protected]> Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Marton Greber <[email protected]> Gerrit-Reviewer: Zoltan Chovan <[email protected]> Gerrit-Reviewer: Zoltan Martonka <[email protected]> Gerrit-Comment-Date: Mon, 21 Jul 2025 08:43:15 +0000 Gerrit-HasComments: No
