This is an automated email from the ASF dual-hosted git repository.

dlmarion pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/accumulo.git


The following commit(s) were added to refs/heads/main by this push:
     new 9d4d68b2a3 Changed return variable for 
ExternalCompactionUtil.getCompactorAddrs (#4419)
9d4d68b2a3 is described below

commit 9d4d68b2a373df2c36763a5ed55675a5f8d127a3
Author: Dave Marion <dlmar...@apache.org>
AuthorDate: Fri Apr 5 10:55:12 2024 -0400

    Changed return variable for ExternalCompactionUtil.getCompactorAddrs (#4419)
---
 .../apache/accumulo/core/clientImpl/InstanceOperationsImpl.java   | 2 +-
 .../accumulo/core/util/compaction/ExternalCompactionUtil.java     | 7 ++++---
 .../org/apache/accumulo/coordinator/CompactionCoordinator.java    | 8 ++++----
 .../src/main/java/org/apache/accumulo/monitor/Monitor.java        | 2 +-
 .../monitor/rest/compactions/external/CoordinatorInfo.java        | 4 ++--
 .../monitor/rest/compactions/external/ExternalCompactionInfo.java | 8 ++++----
 6 files changed, 16 insertions(+), 15 deletions(-)

diff --git 
a/core/src/main/java/org/apache/accumulo/core/clientImpl/InstanceOperationsImpl.java
 
b/core/src/main/java/org/apache/accumulo/core/clientImpl/InstanceOperationsImpl.java
index 74bd2ece59..215f7c6214 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/clientImpl/InstanceOperationsImpl.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/clientImpl/InstanceOperationsImpl.java
@@ -303,7 +303,7 @@ public class InstanceOperationsImpl implements 
InstanceOperations {
   public List<ActiveCompaction> getActiveCompactions()
       throws AccumuloException, AccumuloSecurityException {
 
-    Map<String,List<HostAndPort>> compactors = 
ExternalCompactionUtil.getCompactorAddrs(context);
+    Map<String,Set<HostAndPort>> compactors = 
ExternalCompactionUtil.getCompactorAddrs(context);
     List<String> tservers = getTabletServers();
 
     int numThreads = Math.max(4, Math.min((tservers.size() + 
compactors.size()) / 10, 256));
diff --git 
a/core/src/main/java/org/apache/accumulo/core/util/compaction/ExternalCompactionUtil.java
 
b/core/src/main/java/org/apache/accumulo/core/util/compaction/ExternalCompactionUtil.java
index 35c358b7ed..0046af7dc6 100644
--- 
a/core/src/main/java/org/apache/accumulo/core/util/compaction/ExternalCompactionUtil.java
+++ 
b/core/src/main/java/org/apache/accumulo/core/util/compaction/ExternalCompactionUtil.java
@@ -25,6 +25,7 @@ import java.util.HashSet;
 import java.util.List;
 import java.util.Map;
 import java.util.Optional;
+import java.util.Set;
 import java.util.concurrent.ExecutionException;
 import java.util.concurrent.ExecutorService;
 import java.util.concurrent.Future;
@@ -107,14 +108,14 @@ public class ExternalCompactionUtil {
   /**
    * @return map of queue names to compactor addresses
    */
-  public static Map<String,List<HostAndPort>> getCompactorAddrs(ClientContext 
context) {
+  public static Map<String,Set<HostAndPort>> getCompactorAddrs(ClientContext 
context) {
     try {
-      final Map<String,List<HostAndPort>> queuesAndAddresses = new HashMap<>();
+      final Map<String,Set<HostAndPort>> queuesAndAddresses = new HashMap<>();
       final String compactorQueuesPath = context.getZooKeeperRoot() + 
Constants.ZCOMPACTORS;
       ZooReader zooReader = context.getZooReader();
       List<String> queues = zooReader.getChildren(compactorQueuesPath);
       for (String queue : queues) {
-        queuesAndAddresses.putIfAbsent(queue, new ArrayList<>());
+        queuesAndAddresses.putIfAbsent(queue, new HashSet<>());
         try {
           List<String> compactors = zooReader.getChildren(compactorQueuesPath 
+ "/" + queue);
           for (String compactor : compactors) {
diff --git 
a/server/compaction-coordinator/src/main/java/org/apache/accumulo/coordinator/CompactionCoordinator.java
 
b/server/compaction-coordinator/src/main/java/org/apache/accumulo/coordinator/CompactionCoordinator.java
index 7358ce4416..c86a93350c 100644
--- 
a/server/compaction-coordinator/src/main/java/org/apache/accumulo/coordinator/CompactionCoordinator.java
+++ 
b/server/compaction-coordinator/src/main/java/org/apache/accumulo/coordinator/CompactionCoordinator.java
@@ -304,7 +304,7 @@ public class CompactionCoordinator extends AbstractServer
 
       long now = System.currentTimeMillis();
 
-      Map<String,List<HostAndPort>> idleCompactors = getIdleCompactors();
+      Map<String,Set<HostAndPort>> idleCompactors = getIdleCompactors();
       TIME_COMPACTOR_LAST_CHECKED.forEach((queue, lastCheckTime) -> {
         if ((now - lastCheckTime) > getMissingCompactorWarningTime()
             && QUEUE_SUMMARIES.isCompactionsQueued(queue) && 
idleCompactors.containsKey(queue)) {
@@ -325,16 +325,16 @@ public class CompactionCoordinator extends AbstractServer
     LOG.info("Shutting down");
   }
 
-  private Map<String,List<HostAndPort>> getIdleCompactors() {
+  private Map<String,Set<HostAndPort>> getIdleCompactors() {
 
-    Map<String,List<HostAndPort>> allCompactors =
+    Map<String,Set<HostAndPort>> allCompactors =
         ExternalCompactionUtil.getCompactorAddrs(getContext());
 
     Set<String> emptyQueues = new HashSet<>();
 
     // Remove all of the compactors that are running a compaction
     RUNNING_CACHE.values().forEach(rc -> {
-      List<HostAndPort> busyCompactors = allCompactors.get(rc.getQueueName());
+      Set<HostAndPort> busyCompactors = allCompactors.get(rc.getQueueName());
       if (busyCompactors != null
           && 
busyCompactors.remove(HostAndPort.fromString(rc.getCompactorAddress()))) {
         if (busyCompactors.isEmpty()) {
diff --git 
a/server/monitor/src/main/java/org/apache/accumulo/monitor/Monitor.java 
b/server/monitor/src/main/java/org/apache/accumulo/monitor/Monitor.java
index 694d6defb4..a93919d61c 100644
--- a/server/monitor/src/main/java/org/apache/accumulo/monitor/Monitor.java
+++ b/server/monitor/src/main/java/org/apache/accumulo/monitor/Monitor.java
@@ -649,7 +649,7 @@ public class Monitor extends AbstractServer implements 
HighlyAvailableService {
     }
     if (System.nanoTime() - ecInfoFetchedNanos > fetchTimeNanos) {
       log.info("User initiated fetch of External Compaction info");
-      Map<String,List<HostAndPort>> compactors =
+      Map<String,Set<HostAndPort>> compactors =
           ExternalCompactionUtil.getCompactorAddrs(getContext());
       log.debug("Found compactors: " + compactors);
       ecInfo.setFetchedTimeMillis(System.currentTimeMillis());
diff --git 
a/server/monitor/src/main/java/org/apache/accumulo/monitor/rest/compactions/external/CoordinatorInfo.java
 
b/server/monitor/src/main/java/org/apache/accumulo/monitor/rest/compactions/external/CoordinatorInfo.java
index 5f015fcd88..8724f758bb 100644
--- 
a/server/monitor/src/main/java/org/apache/accumulo/monitor/rest/compactions/external/CoordinatorInfo.java
+++ 
b/server/monitor/src/main/java/org/apache/accumulo/monitor/rest/compactions/external/CoordinatorInfo.java
@@ -18,8 +18,8 @@
  */
 package org.apache.accumulo.monitor.rest.compactions.external;
 
-import java.util.List;
 import java.util.Optional;
+import java.util.Set;
 
 import com.google.common.net.HostAndPort;
 
@@ -35,7 +35,7 @@ public class CoordinatorInfo {
     server = serverOpt.map(HostAndPort::toString).orElse("none");
     var queueToCompactors = ecInfo.getCompactors();
     numQueues = queueToCompactors.size();
-    numCompactors = 
queueToCompactors.values().stream().mapToInt(List::size).sum();
+    numCompactors = 
queueToCompactors.values().stream().mapToInt(Set::size).sum();
     lastContact = System.currentTimeMillis() - ecInfo.getFetchedTimeMillis();
   }
 }
diff --git 
a/server/monitor/src/main/java/org/apache/accumulo/monitor/rest/compactions/external/ExternalCompactionInfo.java
 
b/server/monitor/src/main/java/org/apache/accumulo/monitor/rest/compactions/external/ExternalCompactionInfo.java
index 0d0d467517..251eb16a32 100644
--- 
a/server/monitor/src/main/java/org/apache/accumulo/monitor/rest/compactions/external/ExternalCompactionInfo.java
+++ 
b/server/monitor/src/main/java/org/apache/accumulo/monitor/rest/compactions/external/ExternalCompactionInfo.java
@@ -19,9 +19,9 @@
 package org.apache.accumulo.monitor.rest.compactions.external;
 
 import java.util.HashMap;
-import java.util.List;
 import java.util.Map;
 import java.util.Optional;
+import java.util.Set;
 
 import com.google.common.net.HostAndPort;
 
@@ -31,7 +31,7 @@ import com.google.common.net.HostAndPort;
 public class ExternalCompactionInfo {
 
   private Optional<HostAndPort> coordinatorHost;
-  private Map<String,List<HostAndPort>> compactors = new HashMap<>();
+  private Map<String,Set<HostAndPort>> compactors = new HashMap<>();
   private long fetchedTimeMillis;
 
   public void setCoordinatorHost(Optional<HostAndPort> coordinatorHost) {
@@ -42,11 +42,11 @@ public class ExternalCompactionInfo {
     return coordinatorHost;
   }
 
-  public Map<String,List<HostAndPort>> getCompactors() {
+  public Map<String,Set<HostAndPort>> getCompactors() {
     return compactors;
   }
 
-  public void setCompactors(Map<String,List<HostAndPort>> compactors) {
+  public void setCompactors(Map<String,Set<HostAndPort>> compactors) {
     this.compactors = compactors;
   }
 

Reply via email to