Hello Marton Greber, 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 (#2).

Change subject: KUDU-3751: master steps down instead of crashing on catch-up 
timeout
......................................................................

KUDU-3751: master steps down instead of crashing 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 graceful
step-down: the master calls RaftConsensus::StepDown(), logs a
warning, and continues running as a follower instead.

Added MasterFailoverCatchupTimeoutTest to verify this behavior. The
test uses a single-master cluster to avoid the nondeterminism of
multi-master election timing. It injects latency into the write op
pipeline (--tablet_inject_latency_on_apply_write_op_ms and
--tablet_inject_latency_on_prepare_write_op_ms) to create a
genuinely pending local op, forces a leadership change via
RaftConsensus::StepDown() while that op is still pending (a
single-voter config re-elects itself immediately), and asserts that
the fix's own log message appears rather than the process crashing.

Change-Id: I4c9c5a3a6ec43c5174f8d8e92e2421029c51ea01
---
M src/kudu/master/catalog_manager-test.cc
M src/kudu/master/catalog_manager.cc
2 files changed, 133 insertions(+), 4 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/kudu refs/changes/37/24637/2
--
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: 2
Gerrit-Owner: Jeison Romero <[email protected]>
Gerrit-Reviewer: Abhishek Chennaka <[email protected]>
Gerrit-Reviewer: Jeison Romero <[email protected]>
Gerrit-Reviewer: Kudu Jenkins (120)
Gerrit-Reviewer: Marton Greber <[email protected]>

Reply via email to