This is an automated email from the ASF dual-hosted git repository.
bteke pushed a commit to branch branch-3.3
in repository https://gitbox.apache.org/repos/asf/hadoop.git
The following commit(s) were added to refs/heads/branch-3.3 by this push:
new 787095f61744 YARN-11639. CME and NPE in
PriorityUtilizationQueueOrderingPolicy (#6… (#6493)
787095f61744 is described below
commit 787095f6174468cc26b72d06b9621c8394cc9384
Author: Ferenc Erdelyi <[email protected]>
AuthorDate: Thu Jan 25 16:25:01 2024 +0100
YARN-11639. CME and NPE in PriorityUtilizationQueueOrderingPolicy (#6…
(#6493)
---
.../capacity/policy/PriorityUtilizationQueueOrderingPolicy.java | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)
diff --git
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/policy/PriorityUtilizationQueueOrderingPolicy.java
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/policy/PriorityUtilizationQueueOrderingPolicy.java
index 995c2ea6b36b..90ea082426d2 100644
---
a/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/policy/PriorityUtilizationQueueOrderingPolicy.java
+++
b/hadoop-yarn-project/hadoop-yarn/hadoop-yarn-server/hadoop-yarn-server-resourcemanager/src/main/java/org/apache/hadoop/yarn/server/resourcemanager/scheduler/capacity/policy/PriorityUtilizationQueueOrderingPolicy.java
@@ -28,6 +28,7 @@ import
org.apache.hadoop.yarn.server.resourcemanager.scheduler.capacity
.CapacitySchedulerConfiguration;
import org.apache.hadoop.yarn.util.resource.Resources;
+import java.util.ArrayList;
import java.util.Comparator;
import java.util.Iterator;
import java.util.List;
@@ -254,9 +255,9 @@ public class PriorityUtilizationQueueOrderingPolicy
// partitionToLookAt is a thread local variable, therefore it is safe to
mutate it.
PriorityUtilizationQueueOrderingPolicy.partitionToLookAt.set(partition);
- // Sort the snapshot of the queues in order to avoid breaking the
prerequisites of TimSort.
- // See YARN-10178 for details.
- return queues.stream().map(PriorityQueueResourcesForSorting::new).sorted(
+ // Copy (for thread safety) and sort the snapshot of the queues in order
to avoid breaking
+ // the prerequisites of TimSort. See YARN-10178 for details.
+ return new
ArrayList<>(queues).stream().map(PriorityQueueResourcesForSorting::new).sorted(
new
PriorityQueueComparator()).map(PriorityQueueResourcesForSorting::getQueue).collect(
Collectors.toList()).iterator();
}
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]