Alexey Serbin has uploaded this change for review. ( http://gerrit.cloudera.org:8080/12324
Change subject: [tools] KUDU-2557 fix flake in TwoConcurrentRebalancers test ...................................................................... [tools] KUDU-2557 fix flake in TwoConcurrentRebalancers test This patch addresses KUDU-2557, fixing an issue where a tablet Raft configuration with the source replica being a leader eventually gets an extra voter replica due to multiple rebalancer tools running concurrently. For example, once a tablet with target replication factor of 3 got the following configuration, the rebalancers tool could not make any forward progress: A (VL) REPLACE=true B (V) C (V) D (V) This patch introduces a new semantic for a move operation during intra-location rebalancing, where empty (or absent) UUID of the target tserver means 'remove the source replica'. In addition, an extra logic has been introduced into the CheckCompleteMove() utility function to handle that new move semantic described above. With that, when the rebalancer observes a tablet's configuration with more voter replicas than the target replication factor, it schedules an operation to remove the source replica. These new provisions allows for progress even in case of tablet configurations pictures above. Change-Id: If5e28f4b644b1549549f50a322c1d7ef376122d3 --- M src/kudu/tools/ksck.cc M src/kudu/tools/ksck.h M src/kudu/tools/kudu-tool-test.cc M src/kudu/tools/rebalancer.cc M src/kudu/tools/tool_replica_util.cc 5 files changed, 71 insertions(+), 28 deletions(-) git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/24/12324/1 -- To view, visit http://gerrit.cloudera.org:8080/12324 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: newchange Gerrit-Change-Id: If5e28f4b644b1549549f50a322c1d7ef376122d3 Gerrit-Change-Number: 12324 Gerrit-PatchSet: 1 Gerrit-Owner: Alexey Serbin <[email protected]>
