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

Marton Greber commented on KUDU-3751:
-------------------------------------

Maybe, replace the LOG(FATAL) branch at catalog_manager.cc:1421-1423 with a 
call to
the consensus layer's LeaderStepDown() / Resign() equivalent, transitioning the
replica back to FOLLOWER and allowing a new election to proceed cleanly.

> Master FATALs instead of abdicating after election timeout
> ----------------------------------------------------------
>
>                 Key: KUDU-3751
>                 URL: https://issues.apache.org/jira/browse/KUDU-3751
>             Project: Kudu
>          Issue Type: Bug
>            Reporter: Marton Greber
>            Priority: Major
>
> When a newly elected Kudu master cannot catch up within the timeout period
> (--master_failover_catchup_timeout_ms, default 30s), it kills itself with a
> FATAL instead of gracefully abdicating back to FOLLOWER state.
> The code itself acknowledges the correct behavior with two TODO comments that
> have not been implemented:
>   src/kudu/master/catalog_manager.cc line 1420:
> {code:java}
>     // TODO: Abdicate on timeout instead of crashing.
>     if (s.IsTimedOut()) {
>       LOG(FATAL) << "Shutting down due to unavailability of other masters 
> after"
>                  << " election. TODO: Abdicate instead.";
>     }{code}



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

Reply via email to