[ https://issues.apache.org/jira/browse/HDFS-4466?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Suresh Srinivas resolved HDFS-4466. ----------------------------------- Resolution: Fixed Fix Version/s: 1.2.0 Hadoop Flags: Reviewed I committed the patch to branch-1. Thank you Brandon! > Remove the deadlock from AbstractDelegationTokenSecretManager > ------------------------------------------------------------- > > Key: HDFS-4466 > URL: https://issues.apache.org/jira/browse/HDFS-4466 > Project: Hadoop HDFS > Issue Type: Bug > Components: namenode, security > Affects Versions: 1.2.0 > Reporter: Brandon Li > Assignee: Brandon Li > Fix For: 1.2.0 > > Attachments: HDFS-4466.branch-1.patch > > > In HDFS-3374, new synchronization in > AbstractDelegationTokenSecretManager.ExpiredTokenRemover was added to make > sure the ExpiredTokenRemover thread can be interrupted in time. Otherwise > TestDelegation fails intermittently because the MiniDFScluster thread could > be shut down before tokenRemover thread. > However, as Todd pointed out in HDFS-3374, a potential deadlock was > introduced by its patch: > {quote} > * FSNamesystem.saveNamespace (holding FSN lock) calls > DTSM.saveSecretManagerState (which takes DTSM lock) > * ExpiredTokenRemover.run (holding DTSM lock) calls rollMasterKey calls > updateCurrentKey calls logUpdateMasterKey which takes FSN lock > So if there is a concurrent saveNamespace at the same tie as the expired > token remover runs, it might make the NN deadlock. {quote} > This JIRA is to track the change of removing the possible deadlock from > AbstractDelegationTokenSecretManager. -- 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