Restore custom concurrency level in UniquifierImpl.

RELNOTES: None
PiperOrigin-RevId: 244975561
diff --git a/src/main/java/com/google/devtools/build/lib/query2/RdepsBoundedVisitor.java b/src/main/java/com/google/devtools/build/lib/query2/RdepsBoundedVisitor.java
index b631ba6..1728977 100644
--- a/src/main/java/com/google/devtools/build/lib/query2/RdepsBoundedVisitor.java
+++ b/src/main/java/com/google/devtools/build/lib/query2/RdepsBoundedVisitor.java
@@ -85,7 +85,8 @@
       this.depth = depth;
       this.universe = universe;
       this.depAndRdepAtDepthUniquifier =
-          new UniquifierImpl<>(depAndRdepAtDepth -> depAndRdepAtDepth);
+          new UniquifierImpl<>(
+              depAndRdepAtDepth -> depAndRdepAtDepth, env.getQueryEvaluationParallelismLevel());
       this.validRdepMinDepthUniquifier = env.createMinDepthSkyKeyUniquifier();
       this.callback = callback;
       this.packageSemaphore = packageSemaphore;
diff --git a/src/main/java/com/google/devtools/build/lib/query2/RdepsUnboundedVisitor.java b/src/main/java/com/google/devtools/build/lib/query2/RdepsUnboundedVisitor.java
index 5ff265a..c85043e 100644
--- a/src/main/java/com/google/devtools/build/lib/query2/RdepsUnboundedVisitor.java
+++ b/src/main/java/com/google/devtools/build/lib/query2/RdepsUnboundedVisitor.java
@@ -94,7 +94,8 @@
         MultisetSemaphore<PackageIdentifier> packageSemaphore) {
       this.env = env;
       this.unfilteredUniverse = unfilteredUniverse;
-      this.depAndRdepUniquifier = new UniquifierImpl<>(depAndRdep -> depAndRdep);
+      this.depAndRdepUniquifier =
+          new UniquifierImpl<>(depAndRdep -> depAndRdep, env.getQueryEvaluationParallelismLevel());
       this.validRdepUniquifier = env.createSkyKeyUniquifier();
       this.callback = callback;
       this.packageSemaphore = packageSemaphore;
diff --git a/src/main/java/com/google/devtools/build/lib/query2/SkyQueryEnvironment.java b/src/main/java/com/google/devtools/build/lib/query2/SkyQueryEnvironment.java
index b26cc88..5c168958 100644
--- a/src/main/java/com/google/devtools/build/lib/query2/SkyQueryEnvironment.java
+++ b/src/main/java/com/google/devtools/build/lib/query2/SkyQueryEnvironment.java
@@ -661,7 +661,7 @@
   @ThreadSafe
   @Override
   public NonExceptionalUniquifier<Target> createUniquifier() {
-    return new UniquifierImpl<>(TargetKeyExtractor.INSTANCE);
+    return new UniquifierImpl<>(TargetKeyExtractor.INSTANCE, queryEvaluationParallelismLevel);
   }
 
   @ThreadSafe
@@ -679,7 +679,7 @@
 
   @ThreadSafe
   public Uniquifier<SkyKey> createSkyKeyUniquifier() {
-    return new UniquifierImpl<>(SkyKeyKeyExtractor.INSTANCE);
+    return new UniquifierImpl<>(SkyKeyKeyExtractor.INSTANCE, queryEvaluationParallelismLevel);
   }
 
   private ImmutableSet<PathFragment> getBlacklistedExcludes(TargetPatternKey targetPatternKey)
@@ -821,6 +821,10 @@
     return new FakeLoadTarget(label, pkg);
   }
 
+  int getQueryEvaluationParallelismLevel() {
+    return queryEvaluationParallelismLevel;
+  }
+
   @ThreadSafe
   @Override
   public TargetAccessor<Target> getAccessor() {
diff --git a/src/main/java/com/google/devtools/build/lib/query2/engine/QueryUtil.java b/src/main/java/com/google/devtools/build/lib/query2/engine/QueryUtil.java
index fe072b6..32843e9 100644
--- a/src/main/java/com/google/devtools/build/lib/query2/engine/QueryUtil.java
+++ b/src/main/java/com/google/devtools/build/lib/query2/engine/QueryUtil.java
@@ -264,8 +264,19 @@
     private final Set<K> alreadySeen;
 
     public UniquifierImpl(KeyExtractor<T, K> extractor) {
+      this(extractor, /*queryEvaluationParallelismLevel=*/ 1);
+    }
+
+    public UniquifierImpl(KeyExtractor<T, K> extractor, int queryEvaluationParallelismLevel) {
       this.extractor = extractor;
-      this.alreadySeen = Collections.newSetFromMap(new ConcurrentHashMap<>());
+      this.alreadySeen =
+          Collections.newSetFromMap(
+              // Note that ConcurrentHashMap sadly only uses these 3 parameters as an *initial*
+              // sizing hint.
+              new ConcurrentHashMap<>(
+                  /*initialCapacity=*/ 16,
+                  /*loadFactor=*/ 0.75f,
+                  /*concurrencyLevel=*/ queryEvaluationParallelismLevel));
     }
 
     @Override