Avoid unnecessary ordering in build event file uploads.
RELNOTES: None
PiperOrigin-RevId: 241926774
diff --git a/src/main/java/com/google/devtools/build/lib/buildeventservice/BuildEventServiceUploader.java b/src/main/java/com/google/devtools/build/lib/buildeventservice/BuildEventServiceUploader.java
index d6fa826..2535091 100644
--- a/src/main/java/com/google/devtools/build/lib/buildeventservice/BuildEventServiceUploader.java
+++ b/src/main/java/com/google/devtools/build/lib/buildeventservice/BuildEventServiceUploader.java
@@ -24,6 +24,7 @@
import com.google.common.base.Preconditions;
import com.google.common.base.Throwables;
import com.google.common.collect.Iterables;
+import com.google.common.collect.Maps;
import com.google.common.eventbus.EventBus;
import com.google.common.util.concurrent.FutureCallback;
import com.google.common.util.concurrent.Futures;
@@ -68,7 +69,6 @@
import java.time.Duration;
import java.util.Collection;
import java.util.Map;
-import java.util.TreeMap;
import java.util.concurrent.BlockingDeque;
import java.util.concurrent.ConcurrentLinkedDeque;
import java.util.concurrent.ExecutionException;
@@ -609,7 +609,7 @@
private ListenableFuture<PathConverter> uploadReferencedLocalFiles(
Collection<LocalFile> localFiles) {
- Map<Path, LocalFile> localFileMap = new TreeMap<>();
+ Map<Path, LocalFile> localFileMap = Maps.newHashMapWithExpectedSize(localFiles.size());
for (LocalFile localFile : localFiles) {
// It is possible for targets to have duplicate artifacts (same path but different owners)
// in their output groups. Since they didn't trigger an artifact conflict they are the