[ 
https://issues.apache.org/jira/browse/KUDU-3791?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=18119107#comment-18119107
 ] 

Gabriella Lotz commented on KUDU-3791:
--------------------------------------

The metrics half of this is done: f54a74dbd landed on master, adding the six 
auto-leader-rebalancer counters and removing the "Add metrics" TODOs.

I'm going to leave the remaining "Make step-down RPCs async" TODO out of scope 
for this ticket. I don't think it's a small change: the transfer loop would 
need a callback per RPC, a way to wait on the outstanding calls before the 
round finishes, and the completed/failed accounting would move into those 
callbacks, so the scheduled = completed + failed invariant would have to hold 
under concurrency too.

It also doesn't look urgent. leader_rebalancing_max_moves_per_round defaults to 
10 and auto_leader_rebalancing_rpc_timeout_seconds to 10, so a round's 
step-down phase is bounded at roughly 100s out of a 3600s cycle 
(auto_leader_rebalancing_interval_seconds). I believe that makes it a latency 
improvement rather than a correctness issue, and the new counters would make it 
easy to verify an async version isn't dropping moves.

I've left the TODO in the file with a note on the reasoning. I have filed 
KUDU-3808 for it, closing this current ticket.

> Address TODOs in auto_leader_rebalancer.cc
> ------------------------------------------
>
>                 Key: KUDU-3791
>                 URL: https://issues.apache.org/jira/browse/KUDU-3791
>             Project: Kudu
>          Issue Type: Sub-task
>            Reporter: Gabriella Lotz
>            Assignee: Gabriella Lotz
>            Priority: Major
>
> # Add metrics line: 472, 834, 842
>  # Make step-down RPCs async line: 410



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to