[ https://issues.apache.org/jira/browse/HADOOP-8220?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13241935#comment-13241935
]
Todd Lipcon commented on HADOOP-8220:
-------------------------------------
Actually moving the error handling code to the call site (instead of inside becomeActive())
introduced a bug, since we call becomeActive() from another spot as well, in the StatCallback.
So we need to have similar code there, or move the error handling back up into becomeActive()
> ZKFailoverController doesn't handle failure to become active correctly
> ----------------------------------------------------------------------
>
> Key: HADOOP-8220
> URL: https://issues.apache.org/jira/browse/HADOOP-8220
> Project: Hadoop Common
> Issue Type: Bug
> Components: auto-failover, ha
> Affects Versions: 0.23.3, 0.24.0
> Reporter: Todd Lipcon
> Assignee: Todd Lipcon
> Priority: Critical
> Attachments: hadoop-8220.txt, hadoop-8220.txt, hadoop-8220.txt
>
>
> The ZKFC doesn't properly handle the case where the monitored service fails to become
active. Currently, it catches the exception and logs a warning, but then continues on, after
calling quitElection(). This causes a NPE when it later tries to use the same zkClient instance
while handling that same request. There is a test case, but the test case doesn't ensure that
the node that had the failure is later able to recover properly.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators: https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira
|