Skip to content

Commit c800db9

Browse files
author
Minni Mittal
committed
using read lock for containerLaunchedonNode method
1 parent fd61e90 commit c800db9

File tree

1 file changed

+15
-10
lines changed
  • hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler

1 file changed

+15
-10
lines changed

hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/SchedulerApplicationAttempt.java

Lines changed: 15 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -646,17 +646,22 @@ public int getNumReservedContainers(
646646
@SuppressWarnings("unchecked")
647647
public void containerLaunchedOnNode(ContainerId containerId,
648648
NodeId nodeId) {
649-
// Inform the container
650-
RMContainer rmContainer = getRMContainer(containerId);
651-
if (rmContainer == null) {
652-
// Some unknown container sneaked into the system. Kill it.
653-
rmContext.getDispatcher().getEventHandler()
654-
.handle(new RMNodeCleanContainerEvent(nodeId, containerId));
655-
return;
656-
}
649+
readLock.lock();
650+
try {
651+
// Inform the container
652+
RMContainer rmContainer = getRMContainer(containerId);
653+
if (rmContainer == null) {
654+
// Some unknown container sneaked into the system. Kill it.
655+
rmContext.getDispatcher().getEventHandler()
656+
.handle(new RMNodeCleanContainerEvent(nodeId, containerId));
657+
return;
658+
}
657659

658-
rmContainer.handle(
659-
new RMContainerEvent(containerId, RMContainerEventType.LAUNCHED));
660+
rmContainer.handle(
661+
new RMContainerEvent(containerId, RMContainerEventType.LAUNCHED));
662+
} finally {
663+
readLock.unlock();
664+
}
660665
}
661666

662667
public void showRequests() {

0 commit comments

Comments
 (0)