YARN-4424. Fix deadlock in RMAppImpl. (Jian he via wangda)

(cherry picked from commit 7e4715186d)

Conflicts:
	hadoop-yarn-project/CHANGES.txt

(cherry picked from commit 7013f9d6cd)

Conflicts:
	hadoop-yarn-project/CHANGES.txt
This commit is contained in:
Wangda Tan 2015-12-08 14:25:16 -08:00
parent 067d14f503
commit fd18377255
2 changed files with 10 additions and 14 deletions

View File

@ -938,6 +938,8 @@ Release 2.6.3 - UNRELEASED
YARN-4348. ZKRMStateStore.syncInternal shouldn't wait for sync completion for YARN-4348. ZKRMStateStore.syncInternal shouldn't wait for sync completion for
avoiding blocking ZK's event thread. (ozawa) avoiding blocking ZK's event thread. (ozawa)
YARN-4424. Fix deadlock in RMAppImpl. (Jian he via wangda)
Release 2.6.2 - 2015-10-28 Release 2.6.2 - 2015-10-28
INCOMPATIBLE CHANGES INCOMPATIBLE CHANGES

View File

@ -427,8 +427,6 @@ public class RMAppImpl implements RMApp, Recoverable {
@Override @Override
public FinalApplicationStatus getFinalApplicationStatus() { public FinalApplicationStatus getFinalApplicationStatus() {
this.readLock.lock();
try {
// finish state is obtained based on the state machine's current state // finish state is obtained based on the state machine's current state
// as a fall-back in case the application has not been unregistered // as a fall-back in case the application has not been unregistered
// ( or if the app never unregistered itself ) // ( or if the app never unregistered itself )
@ -437,11 +435,7 @@ public class RMAppImpl implements RMApp, Recoverable {
&& currentAttempt.getFinalApplicationStatus() != null) { && currentAttempt.getFinalApplicationStatus() != null) {
return currentAttempt.getFinalApplicationStatus(); return currentAttempt.getFinalApplicationStatus();
} }
return return createFinalApplicationStatus(this.stateMachine.getCurrentState());
createFinalApplicationStatus(this.stateMachine.getCurrentState());
} finally {
this.readLock.unlock();
}
} }
@Override @Override