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

Chris Nauroth commented on HDFS-7121:
-------------------------------------

I agree that a pre-check strategy is likely to be good enough.  Upgrade and 
rollback are operations that execute infrequently.  Typically they're done 
during periods of low activity on the cluster with a close watch by an admin.  
Clients can't really connect anyway.  It's highly likely that a pre-check would 
expose potential problems in most realistic scenarios, and the inherent 
time-of-check/time-of-use race condition is unlikely to happen.  I'm going to 
draft a prototype patch for a pre-check RPC.

> For JournalNode operations that must succeed on all nodes, attempt to undo 
> the operation on all nodes if it fails on one node.
> ------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: HDFS-7121
>                 URL: https://issues.apache.org/jira/browse/HDFS-7121
>             Project: Hadoop HDFS
>          Issue Type: Sub-task
>          Components: journal-node
>            Reporter: Chris Nauroth
>
> Several JournalNode operations are not satisfied by a quorum.  They must 
> succeed on every JournalNode in the cluster.  If the operation succeeds on 
> some nodes, but fails on others, then this may leave the nodes in an 
> inconsistent state and require operations to do manual recovery steps.  For 
> example, if {{doPreUpgrade}} succeeds on 2 nodes and fails on 1 node, then 
> the operator will need to correct the problem on the failed node and also 
> manually restore the previous.tmp directory to current on the 2 successful 
> nodes before reattempting the upgrade.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to