Skip to content

Commit d4b6b68

Browse files
committed
consistent sort value
1 parent c796146 commit d4b6b68

1 file changed

Lines changed: 8 additions & 1 deletion

File tree

SingularityService/src/main/java/com/hubspot/singularity/data/history/SingularityTaskHistoryPersister.java

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,12 +17,14 @@
1717
import java.util.ArrayList;
1818
import java.util.Comparator;
1919
import java.util.List;
20+
import java.util.Map;
2021
import java.util.Optional;
2122
import java.util.concurrent.CompletableFuture;
2223
import java.util.concurrent.TimeUnit;
2324
import java.util.concurrent.atomic.AtomicBoolean;
2425
import java.util.concurrent.atomic.AtomicLong;
2526
import java.util.concurrent.locks.ReentrantLock;
27+
import java.util.function.Function;
2628
import java.util.stream.Collectors;
2729
import javax.inject.Singleton;
2830
import org.apache.mesos.v1.Protos.TaskStatus.Reason;
@@ -71,8 +73,13 @@ public void runActionOnPoll() {
7173

7274
final long start = System.currentTimeMillis();
7375
List<String> requestIds = taskManager.getRequestIdsInTaskHistory();
76+
Map<String, Integer> taskCounts = requestIds
77+
.stream()
78+
.collect(
79+
Collectors.toMap(Function.identity(), taskManager::getTaskCountForRequest)
80+
);
7481
requestIds.sort(
75-
Comparator.comparingLong(taskManager::getTaskCountForRequest).reversed()
82+
Comparator.comparingLong(r -> taskCounts.getOrDefault(r, 0)).reversed()
7683
);
7784
List<CompletableFuture<Void>> futures = new ArrayList<>();
7885
for (String requestId : requestIds) {

0 commit comments

Comments
 (0)