You are viewing a plain text version of this content. The canonical link for it is here.
Posted to hdfs-issues@hadoop.apache.org by "Todd Lipcon (JIRA)" <ji...@apache.org> on 2012/09/11 07:00:08 UTC

[jira] [Commented] (HDFS-862) Potential NN deadlock in processDistributedUpgradeCommand

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

Todd Lipcon commented on HDFS-862:
----------------------------------

Given that we removed the "distributed upgrade" code recently, maybe we should just backport that patch to earlier branches to avoid this issue entirely? Thanks for digging into this, Andrey!
                
> Potential NN deadlock in processDistributedUpgradeCommand
> ---------------------------------------------------------
>
>                 Key: HDFS-862
>                 URL: https://issues.apache.org/jira/browse/HDFS-862
>             Project: Hadoop HDFS
>          Issue Type: Bug
>          Components: name-node
>    Affects Versions: 0.22.0, 0.23.1
>            Reporter: Todd Lipcon
>         Attachments: cycle.png, org.apache.hadoop.hdfs.server.common.TestDistributedUpgrade-output.txt
>
>
> Haven't seen this in practice, but the lock order is inconsistent. processReport locks FSNamesystem, then calls UpgradeManager.startUpgrade, getUpgradeState, and getUpgradeStatus (each of which locks the UpgradeManager). FSNameSystem.processDistributedUpgradeCommand calls upgradeManager.processUpgradeCommand which is synchronized on UpgradeManager, which can call FSNameSystem.leaveSafeMode which synchronizes on FSNamesystem.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira