From 4df9782c1d706327e928596f3830a80c0a251937 Mon Sep 17 00:00:00 2001 From: "mudit.sharma" Date: Sat, 24 Apr 2021 11:00:44 +0530 Subject: [PATCH] MAPREDUCE-7339. Making ALREADY_SPECULATING more priority than TOO_LATE_TO_SPECULATE or PROGRESS_IS_GOOD --- .../hadoop/mapreduce/v2/app/speculate/DefaultSpeculator.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/speculate/DefaultSpeculator.java b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/speculate/DefaultSpeculator.java index 91215b528b359..fa493d7c3641c 100644 --- a/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/speculate/DefaultSpeculator.java +++ b/hadoop-mapreduce-project/hadoop-mapreduce-client/hadoop-mapreduce-client-app/src/main/java/org/apache/hadoop/mapreduce/v2/app/speculate/DefaultSpeculator.java @@ -379,6 +379,11 @@ private long speculationValue(TaskId taskID, long now) { } } + if(attempts.values().stream().filter(taskAttempt -> taskAttempt.getState() == TaskAttemptState.RUNNING + || taskAttempt.getState() == TaskAttemptState.STARTING).count() > 1){ + return ALREADY_SPECULATING; + } + TaskAttemptId runningTaskAttemptID = null; int numberRunningAttempts = 0;