Hello Marton Greber, Alexey Serbin, Gabriella Lotz, Kudu Jenkins, Abhishek
Chennaka,
I'd like you to reexamine a change. Please visit
http://gerrit.cloudera.org:8080/24637
to look at the new patch set (#12).
Change subject: KUDU-3751: master exits cleanly on catch-up timeout
......................................................................
KUDU-3751: master exits cleanly on catch-up timeout
Previously, when a newly elected master leader could not catch up
with the rest of the Raft configuration within
--master_failover_catchup_timeout_ms, it would LOG(FATAL) and crash
the entire process.
This patch replaces that crash with a controlled shutdown: the
master steps down as a best-effort courtesy to the rest of the Raft
group, then exits with status 1. Master::Shutdown() is deliberately
not called first: it runs on the same worker pool this code is
already executing on, so calling it here would self-deadlock.
Added MasterFailoverCatchupTimeoutTest, which verifies this against
a real 3-master cluster: one follower is deterministically forced
to be the only one able to win the next election, made to have a
genuinely pending write op, and its process is confirmed to exit
cleanly with status 1 once it takes over and hits the timeout.
Change-Id: I4c9c5a3a6ec43c5174f8d8e92e2421029c51ea01
---
M src/kudu/master/catalog_manager-test.cc
M src/kudu/master/catalog_manager.cc
M src/kudu/mini-cluster/external_mini_cluster.cc
M src/kudu/mini-cluster/external_mini_cluster.h
4 files changed, 297 insertions(+), 5 deletions(-)
git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/37/24637/12
--
To view, visit http://gerrit.cloudera.org:8080/24637
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings
Gerrit-Project: kudu
Gerrit-Branch: master
Gerrit-MessageType: newpatchset
Gerrit-Change-Id: I4c9c5a3a6ec43c5174f8d8e92e2421029c51ea01
Gerrit-Change-Number: 24637
Gerrit-PatchSet: 12
Gerrit-Owner: Jeison Romero <[email protected]>
Gerrit-Reviewer: Abhishek Chennaka <[email protected]>
Gerrit-Reviewer: Alexey Serbin <[email protected]>
Gerrit-Reviewer: Gabriella Lotz <[email protected]>
Gerrit-Reviewer: Jeison Romero <[email protected]>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Marton Greber <[email protected]>