[
https://issues.apache.org/jira/browse/YARN-7051?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16133631#comment-16133631
]
Eric Payne commented on YARN-7051:
----------------------------------
In the cross-queue preemption policy, it is synchronizing on the leafqueue when
it walks the applications list:
{code:title=FifoCandidatesSelector#selectCandidates}
...
synchronized (leafQueue) {
...
Iterator<FiCaSchedulerApp> desc =
leafQueue.getOrderingPolicy().getPreemptionIterator();
while (desc.hasNext()) {
FiCaSchedulerApp fc = desc.next();
{code}
> FifoIntraQueuePreemptionPlugin can get concurrent modification exception/
> -------------------------------------------------------------------------
>
> Key: YARN-7051
> URL: https://issues.apache.org/jira/browse/YARN-7051
> Project: Hadoop YARN
> Issue Type: Bug
> Components: capacity scheduler, scheduler preemption, yarn
> Affects Versions: 2.9.0, 2.8.1, 3.0.0-alpha3
> Reporter: Eric Payne
> Priority: Critical
>
> {{FifoIntraQueuePreemptionPlugin#calculateUsedAMResourcesPerQueue}} has the
> following code:
> {code}
> Collection<FiCaSchedulerApp> runningApps = leafQueue.getApplications();
> Resource amUsed = Resources.createResource(0, 0);
> for (FiCaSchedulerApp app : runningApps) {
> {code}
> {{runningApps}} is unmodifiable but not concurrent. This caused the
> preemption monitor thread to crash in the RM in one of our clusters.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]