diff options
author | Harald Musum <musum@yahooinc.com> | 2023-05-08 08:01:58 +0200 |
---|---|---|
committer | Harald Musum <musum@yahooinc.com> | 2023-05-08 08:01:58 +0200 |
commit | e5494c300ab4e293b594573b2c23f4941d227276 (patch) | |
tree | a1cdc25ab3deac66775fcb9b4ba4d079b3664bb5 | |
parent | 1d270b30aeb0d1dc5770b59383ba1deabf7673e5 (diff) |
Minor cleanup
GC dead code, optimize imports, fix unnecessary throws statements
39 files changed, 58 insertions, 148 deletions
diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/ClusterEvent.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/ClusterEvent.java index 1853a024e11..f7b5b5ee523 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/ClusterEvent.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/ClusterEvent.java @@ -28,10 +28,6 @@ public class ClusterEvent implements Event{ return description; } - public Type getType() { - return type; - } - @Override public String toString() { return "Cluster event type " + type + " @" + timeMs + ": " + description; diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/ClusterStateBundle.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/ClusterStateBundle.java index e55f3d4592b..7062f67830b 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/ClusterStateBundle.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/ClusterStateBundle.java @@ -3,7 +3,14 @@ package com.yahoo.vespa.clustercontroller.core; import com.yahoo.vdslib.state.ClusterState; -import java.util.*; +import java.util.Arrays; +import java.util.Collections; +import java.util.Map; +import java.util.Objects; +import java.util.Optional; +import java.util.Set; +import java.util.TreeMap; +import java.util.TreeSet; import java.util.function.Function; import java.util.stream.Collectors; @@ -194,12 +201,6 @@ public class ClusterStateBundle { public static ClusterStateBundle of(AnnotatedClusterState baselineState, Map<String, AnnotatedClusterState> derivedBucketSpaceStates, - boolean deferredActivation) { - return new ClusterStateBundle(baselineState, derivedBucketSpaceStates, null, deferredActivation); - } - - public static ClusterStateBundle of(AnnotatedClusterState baselineState, - Map<String, AnnotatedClusterState> derivedBucketSpaceStates, FeedBlock feedBlock, boolean deferredActivation) { return new ClusterStateBundle(baselineState, derivedBucketSpaceStates, feedBlock, deferredActivation); diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/DistributorNodeInfo.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/DistributorNodeInfo.java index fb9a4cf4604..24e3d0de977 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/DistributorNodeInfo.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/DistributorNodeInfo.java @@ -4,8 +4,6 @@ package com.yahoo.vespa.clustercontroller.core; import com.yahoo.vdslib.distribution.Distribution; import com.yahoo.vdslib.state.Node; import com.yahoo.vdslib.state.NodeType; -import com.yahoo.vespa.clustercontroller.core.hostinfo.HostInfo; -import com.yahoo.vespa.clustercontroller.core.hostinfo.StorageNodeStatsBridge; /** * Class encapsulating what the Cluster Controller knows about a distributor node. Most of the information is diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/EventLog.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/EventLog.java index 0058d12f640..e64e684ed70 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/EventLog.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/EventLog.java @@ -15,7 +15,7 @@ import java.util.logging.Logger; public class EventLog implements EventLogInterface { - public static Logger log = Logger.getLogger(EventLog.class.getName()); + public static final Logger log = Logger.getLogger(EventLog.class.getName()); private final Timer timer; private final LinkedList<Event> eventLog = new LinkedList<>(); diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/EventLogInterface.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/EventLogInterface.java index 382025bb67b..e4538162f64 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/EventLogInterface.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/EventLogInterface.java @@ -3,8 +3,6 @@ package com.yahoo.vespa.clustercontroller.core; import com.yahoo.vdslib.state.Node; -import java.util.List; - public interface EventLogInterface { void add(Event e); diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/FleetController.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/FleetController.java index ff0d8b87e92..cef1b41b775 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/FleetController.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/FleetController.java @@ -257,7 +257,7 @@ public class FleetController implements NodeListener, SlobrokListener, SystemSta public int getRpcPort() { return rpcServer.getPort(); } - public void shutdown() throws InterruptedException, java.io.IOException { + public void shutdown() throws InterruptedException { if (runner != null && isRunning()) { context.log(logger, Level.INFO, "Joining event thread."); running.set(false); @@ -393,14 +393,8 @@ public class FleetController implements NodeListener, SlobrokListener, SystemSta } private void storeClusterStateMetaDataToZooKeeper(ClusterStateBundle stateBundle) { - try { - database.saveLatestSystemStateVersion(databaseContext, stateBundle.getVersion()); - database.saveLatestClusterStateBundle(databaseContext, stateBundle); - } catch (InterruptedException e) { - // Rethrow as RuntimeException to propagate exception up to main thread method. - // Don't want to hide failures to write cluster state version. - throw new RuntimeException("ZooKeeper write interrupted", e); - } + database.saveLatestSystemStateVersion(databaseContext, stateBundle.getVersion()); + database.saveLatestClusterStateBundle(databaseContext, stateBundle); } /** @@ -408,7 +402,7 @@ public class FleetController implements NodeListener, SlobrokListener, SystemSta * The keys in the given map are indices of fleet controllers. * The values are what fleetcontroller that fleetcontroller wants to * become master. - * + * <p * If more than half the fleetcontrollers want a node to be master and * that node also wants itself as master, that node is the single master. * If this condition is not met, there is currently no master. @@ -450,7 +444,7 @@ public class FleetController implements NodeListener, SlobrokListener, SystemSta } /** Called when all distributors have acked newest cluster state version. */ - public void handleAllDistributorsInSync(DatabaseHandler database, DatabaseHandler.DatabaseContext dbContext) throws InterruptedException { + public void handleAllDistributorsInSync(DatabaseHandler database, DatabaseHandler.DatabaseContext dbContext) { Set<ConfiguredNode> nodes = new HashSet<>(cluster.clusterInfo().getConfiguredNodes().values()); // TODO wouldn't it be better to always get bundle information from the state broadcaster? var currentBundle = stateVersionTracker.getVersionedClusterStateBundle(); @@ -512,12 +506,6 @@ public class FleetController implements NodeListener, SlobrokListener, SystemSta rpcServer.setSlobrokConnectionSpecs(options.slobrokConnectionSpecs(), options.rpcPort()); } - try { - statusPageServer.setPort(options.httpPort()); - } catch (Exception e) { - context.log(logger, Level.WARNING, "Failed to initialize status server socket. This may be natural if cluster has altered the services running on this node: " + e.getMessage()); - } - long currentTime = timer.getCurrentTimeInMillis(); nextStateSendTime = Math.min(currentTime + options.minTimeBetweenNewSystemStates(), nextStateSendTime); } @@ -632,8 +620,6 @@ public class FleetController implements NodeListener, SlobrokListener, SystemSta private boolean updateMasterElectionState() { try { return masterElectionHandler.watchMasterElection(database, databaseContext); - } catch (InterruptedException e) { - throw new RuntimeException(e); } catch (Exception e) { context.log(logger, Level.WARNING, "Failed to watch master election: " + e); } @@ -1116,7 +1102,7 @@ public class FleetController implements NodeListener, SlobrokListener, SystemSta synchronized (monitor) { monitor.notifyAll(); } } - public DatabaseHandler.DatabaseContext databaseContext = new DatabaseHandler.DatabaseContext() { + public final DatabaseHandler.DatabaseContext databaseContext = new DatabaseHandler.DatabaseContext() { @Override public ContentCluster getCluster() { return cluster; } @Override @@ -1207,10 +1193,6 @@ public class FleetController implements NodeListener, SlobrokListener, SystemSta public ContentCluster getCluster() { return cluster; } - public EventLog getEventLog() { - return eventLog; - } - public StatusHandler.ContainerStatusPageServer statusPageServer() { return statusPageServer; } } diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/FleetControllerOptions.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/FleetControllerOptions.java index 21ccfb2750e..1541e1a4218 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/FleetControllerOptions.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/FleetControllerOptions.java @@ -469,10 +469,6 @@ public class FleetControllerOptions { return this; } - public String[] slobrokConnectionSpecs() { - return slobrokConnectionSpecs; - } - public Builder setSlobrokConnectionSpecs(String[] slobrokConnectionSpecs) { Objects.requireNonNull(slobrokConnectionSpecs, "slobrokConnectionSpecs cannot be null"); this.slobrokConnectionSpecs = slobrokConnectionSpecs; @@ -664,10 +660,6 @@ public class FleetControllerOptions { return this; } - public double minMergeCompletionRatio() { - return minMergeCompletionRatio; - } - public Builder setMinMergeCompletionRatio(double minMergeCompletionRatio) { this.minMergeCompletionRatio = minMergeCompletionRatio; return this; diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/MasterElectionHandler.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/MasterElectionHandler.java index dfc328346bb..b041e6b14f8 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/MasterElectionHandler.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/MasterElectionHandler.java @@ -120,8 +120,7 @@ public class MasterElectionHandler implements MasterInterface { public boolean isAmongNthFirst(int first) { return (nextInLineCount < first); } - public boolean watchMasterElection(DatabaseHandler database, - DatabaseHandler.DatabaseContext dbContext) throws InterruptedException { + public boolean watchMasterElection(DatabaseHandler database, DatabaseHandler.DatabaseContext dbContext) { if (totalCount == 1 && !usingZooKeeper) { return false; // Allow single configured node to become master implicitly if no ZK configured } diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/NodeInfo.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/NodeInfo.java index d7aac1c26fa..069139b8c9e 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/NodeInfo.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/NodeInfo.java @@ -241,8 +241,6 @@ abstract public class NodeInfo implements Comparable<NodeInfo> { return node.getIndex(); } - public ContentCluster getCluster() { return cluster; } - /** Returns true if the node is registered in slobrok */ public boolean isInSlobrok() { return lastSeenInSlobrok == null; } diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/SystemStateBroadcaster.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/SystemStateBroadcaster.java index 0efba56284b..72bd5148f11 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/SystemStateBroadcaster.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/SystemStateBroadcaster.java @@ -14,11 +14,10 @@ import java.util.List; import java.util.Map; import java.util.TreeMap; import java.util.logging.Logger; -import java.util.stream.Collectors; public class SystemStateBroadcaster { - private static Logger log = Logger.getLogger(SystemStateBroadcaster.class.getName()); + private static final Logger log = Logger.getLogger(SystemStateBroadcaster.class.getName()); private final FleetControllerContext context; private final Timer timer; @@ -261,7 +260,7 @@ public class SystemStateBroadcaster { lastStateVersionBundleAcked = clusterStateBundle.getVersion(); } - private void markCurrentClusterStateAsConverged(DatabaseHandler database, DatabaseHandler.DatabaseContext dbContext, FleetController fleetController) throws InterruptedException { + private void markCurrentClusterStateAsConverged(DatabaseHandler database, DatabaseHandler.DatabaseContext dbContext, FleetController fleetController) { context.log(log, Level.FINE, "All distributors have newest clusterstate, updating start timestamps in zookeeper and clearing them from cluster state"); lastClusterStateVersionConverged = clusterStateBundle.getVersion(); lastClusterStateBundleConverged = clusterStateBundle; diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/database/DatabaseHandler.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/database/DatabaseHandler.java index 408c10e81b1..efb97a4a69e 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/database/DatabaseHandler.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/database/DatabaseHandler.java @@ -91,8 +91,11 @@ public class DatabaseHandler { private boolean lostZooKeeperConnectionEvent = false; private Map<Integer, Integer> masterDataEvent = null; - public DatabaseHandler(FleetControllerContext fleetControllerContext, DatabaseFactory databaseFactory, Timer timer, String zooKeeperAddress, Object monitor) throws InterruptedException - { + public DatabaseHandler(FleetControllerContext fleetControllerContext, + DatabaseFactory databaseFactory, + Timer timer, + String zooKeeperAddress, + Object monitor) { this.fleetControllerContext = fleetControllerContext; this.databaseFactory = databaseFactory; this.timer = timer; @@ -356,7 +359,7 @@ public class DatabaseHandler { } } - public void saveLatestSystemStateVersion(DatabaseContext databaseContext, int version) throws InterruptedException { + public void saveLatestSystemStateVersion(DatabaseContext databaseContext, int version) { fleetControllerContext.log(logger, Level.FINE, () -> "Checking if latest system state version has been updated and need to be stored."); // Schedule a write if one of the following is true: // - There is already a pending vote to be written, that may have been written already without our knowledge diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/database/ZooKeeperDatabase.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/database/ZooKeeperDatabase.java index ea745a56066..042d091fdbb 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/database/ZooKeeperDatabase.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/database/ZooKeeperDatabase.java @@ -245,7 +245,7 @@ public class ZooKeeperDatabase extends Database { if (!toStore.equals(nodeState)) { log.warning("Attempted to store wanted state with more than just a main state. Extra data stripped. Original data '" + nodeState.serialize(true)); } - sb.append(node.toString()).append(':').append(toStore.serialize(true)).append('\n'); + sb.append(node).append(':').append(toStore.serialize(true)).append('\n'); } } byte[] val = sb.toString().getBytes(utf8); @@ -299,7 +299,7 @@ public class ZooKeeperDatabase extends Database { Long timestamp = timestamps.get(n); sb.append(n.toString()).append(':').append(timestamp).append('\n'); } - byte val[] = sb.toString().getBytes(utf8); + byte[] val = sb.toString().getBytes(utf8); try{ context.log(log, Level.FINE, () -> "Storing start timestamps at '" + paths.startTimestamps() + "'"); session.setData(paths.startTimestamps(), val, -1); diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/hostinfo/ContentNode.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/hostinfo/ContentNode.java index 945745b7ff5..45f67c09ac4 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/hostinfo/ContentNode.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/hostinfo/ContentNode.java @@ -13,7 +13,7 @@ import java.util.Optional; */ public class ContentNode { @JsonProperty("resource-usage") - private Map<String, ResourceUsage> resourceUsage = new HashMap<>(); + private final Map<String, ResourceUsage> resourceUsage = new HashMap<>(); public Map<String, ResourceUsage> getResourceUsage() { return Collections.unmodifiableMap(resourceUsage); diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/hostinfo/HostInfo.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/hostinfo/HostInfo.java index 1a11e32c9b8..9314eb61bf2 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/hostinfo/HostInfo.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/hostinfo/HostInfo.java @@ -16,7 +16,7 @@ import java.util.logging.Logger; */ public class HostInfo { - private static Logger log = Logger.getLogger(HostInfo.class.getName()); + private static final Logger log = Logger.getLogger(HostInfo.class.getName()); private static final ObjectMapper mapper = new ObjectMapper(); private String rawCreationString = "NOT SET"; static { diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/hostinfo/StorageNodeStatsBridge.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/hostinfo/StorageNodeStatsBridge.java index 73f504b6004..aaaf44c3f3f 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/hostinfo/StorageNodeStatsBridge.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/hostinfo/StorageNodeStatsBridge.java @@ -4,7 +4,6 @@ package com.yahoo.vespa.clustercontroller.core.hostinfo; import com.yahoo.vespa.clustercontroller.core.*; import java.util.HashMap; -import java.util.List; import java.util.Map; /** diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/requests/VerboseReport.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/requests/VerboseReport.java deleted file mode 100644 index c18afb811fa..00000000000 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/requests/VerboseReport.java +++ /dev/null @@ -1,6 +0,0 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -package com.yahoo.vespa.clustercontroller.core.restapiv2.requests; - -public enum VerboseReport { - STATISTICS -} diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/rpc/RPCActivateClusterStateVersionWaiter.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/rpc/RPCActivateClusterStateVersionWaiter.java index fe441a0eb91..1e7591a9aaa 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/rpc/RPCActivateClusterStateVersionWaiter.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/rpc/RPCActivateClusterStateVersionWaiter.java @@ -7,7 +7,6 @@ import com.yahoo.jrt.RequestWaiter; import com.yahoo.vespa.clustercontroller.core.ActivateClusterStateVersionRequest; import com.yahoo.vespa.clustercontroller.core.Communicator; import com.yahoo.vespa.clustercontroller.core.NodeInfo; -import com.yahoo.vespa.clustercontroller.core.Timer; /** * Binds together the reply received for a particular cluster state activation RPC and diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/rpc/RPCCommunicator.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/rpc/RPCCommunicator.java index 58bbd03044f..fc2a8eda7e9 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/rpc/RPCCommunicator.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/rpc/RPCCommunicator.java @@ -135,7 +135,7 @@ public class RPCCommunicator implements Communicator { @Override public void setSystemState(ClusterStateBundle stateBundle, NodeInfo node, Waiter<SetClusterStateRequest> externalWaiter) { - RPCSetClusterStateWaiter waiter = new RPCSetClusterStateWaiter(externalWaiter, timer); + RPCSetClusterStateWaiter waiter = new RPCSetClusterStateWaiter(externalWaiter); ClusterState baselineState = stateBundle.getBaselineClusterState(); Target connection = getConnection(node); diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/rpc/RPCSetClusterStateWaiter.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/rpc/RPCSetClusterStateWaiter.java index 41fc7f67fbb..eaeec8abae7 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/rpc/RPCSetClusterStateWaiter.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/rpc/RPCSetClusterStateWaiter.java @@ -7,7 +7,6 @@ import com.yahoo.jrt.RequestWaiter; import com.yahoo.vespa.clustercontroller.core.Communicator; import com.yahoo.vespa.clustercontroller.core.NodeInfo; import com.yahoo.vespa.clustercontroller.core.SetClusterStateRequest; -import com.yahoo.vespa.clustercontroller.core.Timer; /** * Waiter class for set cluster state RPC commands. @@ -15,11 +14,9 @@ import com.yahoo.vespa.clustercontroller.core.Timer; public class RPCSetClusterStateWaiter implements RequestWaiter { SetClusterStateRequest request; - Timer timer; Communicator.Waiter<SetClusterStateRequest> waiter; - public RPCSetClusterStateWaiter(Communicator.Waiter<SetClusterStateRequest> waiter, Timer timer) { - this.timer = timer; + public RPCSetClusterStateWaiter(Communicator.Waiter<SetClusterStateRequest> waiter) { this.waiter = waiter; } diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/status/RunDataExtractor.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/status/RunDataExtractor.java deleted file mode 100644 index 599931ba13c..00000000000 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/status/RunDataExtractor.java +++ /dev/null @@ -1,15 +0,0 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -package com.yahoo.vespa.clustercontroller.core.status; - -import com.yahoo.vespa.clustercontroller.core.ContentCluster; -import com.yahoo.vespa.clustercontroller.core.FleetControllerOptions; - -/** - * @author Haakon Humberset - */ -public interface RunDataExtractor { - - FleetControllerOptions getOptions(); - ContentCluster getCluster(); - -} diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/status/StatusHandler.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/status/StatusHandler.java index 302832e4542..a8a858b5d31 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/status/StatusHandler.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/status/StatusHandler.java @@ -6,7 +6,6 @@ import com.yahoo.vespa.clustercontroller.core.status.statuspage.StatusPageServer import com.yahoo.vespa.clustercontroller.utils.communication.http.HttpRequest; import com.yahoo.vespa.clustercontroller.utils.communication.http.HttpRequestHandler; import com.yahoo.vespa.clustercontroller.utils.communication.http.HttpResult; -import java.io.IOException; import java.io.StringWriter; import java.nio.charset.StandardCharsets; import java.util.Map; @@ -35,8 +34,7 @@ public class StatusHandler implements HttpRequestHandler { private final Object answerMonitor = new Object(); public int getPort() { return 0; } - public void shutdown() throws InterruptedException, IOException {} - public void setPort(int port) {} + public void shutdown() {} public StatusPageServer.HttpRequest getCurrentHttpRequest() { synchronized (answerMonitor) { StatusPageServer.HttpRequest r = request; diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/status/statuspage/HtmlTable.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/status/statuspage/HtmlTable.java index af059809815..b2c12cbbdcf 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/status/statuspage/HtmlTable.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/status/statuspage/HtmlTable.java @@ -10,7 +10,8 @@ public class HtmlTable { int border = 1; int cellSpacing = 0; - enum Orientation { LEFT, CENTER, RIGHT }; + enum Orientation { LEFT, CENTER, RIGHT } + public static class CellProperties { Integer backgroundColor; Integer colSpan; // Colspan 0 indicate rest of table @@ -59,7 +60,7 @@ public class HtmlTable { Row addProperties(CellProperties p) { rowProperties.add(p); return this; } } - private ArrayList<Row> cells = new ArrayList<Row>(); + private final ArrayList<Row> cells = new ArrayList<Row>(); public HtmlTable() { } diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/status/statuspage/StatusPageResponse.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/status/statuspage/StatusPageResponse.java index 87aa1fc497c..0701403732a 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/status/statuspage/StatusPageResponse.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/status/statuspage/StatusPageResponse.java @@ -10,10 +10,9 @@ import java.io.OutputStreamWriter; public class StatusPageResponse { - private ByteArrayOutputStream output = new ByteArrayOutputStream(); + private final ByteArrayOutputStream output = new ByteArrayOutputStream(); private String contentType; private ResponseCode responseCode = ResponseCode.OK; - private boolean clientCachingEnabled = false; public enum ResponseCode { OK(200, "OK"), @@ -61,14 +60,6 @@ public class StatusPageResponse { this.responseCode = responseCode; } - public boolean isClientCachingEnabled() { - return clientCachingEnabled; - } - - public void setClientCachingEnabled(boolean clientCachingEnabled) { - this.clientCachingEnabled = clientCachingEnabled; - } - public void writeHtmlHeader(StringBuilder content, String title) { String escaped_title = HtmlEscapers.htmlEscaper().escape(title); content.append("<html>\n") diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/status/statuspage/StatusPageServer.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/status/statuspage/StatusPageServer.java index 1bd011993a0..ec5760181e5 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/status/statuspage/StatusPageServer.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/status/statuspage/StatusPageServer.java @@ -24,7 +24,7 @@ public class StatusPageServer { private final String request; private String pathPrefix = ""; private final Map<String, String> params = new HashMap<String, String>(); - private String path; + private final String path; static Pattern pathPattern; static { @@ -112,7 +112,7 @@ public class StatusPageServer { } } - private List<PatternRouting> patterns = new ArrayList<>(); + private final List<PatternRouting> patterns = new ArrayList<>(); public void addHandler(Pattern pattern, RequestHandler handler) { patterns.add(new PatternRouting(pattern, handler)); diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/status/statuspage/VdsClusterHtmlRenderer.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/status/statuspage/VdsClusterHtmlRenderer.java index 547647e82e6..b350467c284 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/status/statuspage/VdsClusterHtmlRenderer.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/status/statuspage/VdsClusterHtmlRenderer.java @@ -58,7 +58,7 @@ public class VdsClusterHtmlRenderer { public void addTable(final StringBuilder destination, final long stableStateTimePeriode) { destination.append(contentBuilder); - destination.append(table.toString()) + destination.append(table) .append("<p>") .append("<p>"); addFooter(destination, stableStateTimePeriode); diff --git a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/ClusterFixture.java b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/ClusterFixture.java index eccdb4d7832..6855f771258 100644 --- a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/ClusterFixture.java +++ b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/ClusterFixture.java @@ -19,14 +19,12 @@ import static org.mockito.Mockito.mock; public class ClusterFixture { public final ContentCluster cluster; - public final Distribution distribution; public final FakeTimer timer; final StateChangeHandler nodeStateChangeHandler; private final ClusterStateGenerator.Params params = new ClusterStateGenerator.Params(); - public ClusterFixture(ContentCluster cluster, Distribution distribution) { + public ClusterFixture(ContentCluster cluster) { this.cluster = cluster; - this.distribution = distribution; this.timer = new FakeTimer(); var context = new FleetControllerContextImpl(new FleetControllerId(cluster.getName(), 0)); this.nodeStateChangeHandler = new StateChangeHandler(context, timer, mock(EventLogInterface.class)); @@ -184,7 +182,7 @@ public class ClusterFixture { Distribution distribution = DistributionBuilder.forFlatCluster(nodeCount); ContentCluster cluster = new ContentCluster("foo", nodes, distribution); - return new ClusterFixture(cluster, distribution); + return new ClusterFixture(cluster); } static ClusterFixture forHierarchicCluster(DistributionBuilder.GroupBuilder root) { @@ -192,7 +190,7 @@ public class ClusterFixture { Distribution distribution = DistributionBuilder.forHierarchicCluster(root); ContentCluster cluster = new ContentCluster("foo", nodes, distribution); - return new ClusterFixture(cluster, distribution); + return new ClusterFixture(cluster); } ClusterStateGenerator.Params generatorParams() { diff --git a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/ClusterStateBundleTest.java b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/ClusterStateBundleTest.java index 17c461a487b..930040b0143 100644 --- a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/ClusterStateBundleTest.java +++ b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/ClusterStateBundleTest.java @@ -244,7 +244,6 @@ public class ClusterStateBundleTest { @Test void cloning_preserves_feed_block_state() { var bundle = createTestBundleWithFeedBlock("foo"); - ; var derived = bundle.cloneWithMapper(Function.identity()); assertEquals(bundle, derived); } diff --git a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/ContentClusterHtmlRendererTest.java b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/ContentClusterHtmlRendererTest.java index 31432d561d0..8d5c2f685f8 100644 --- a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/ContentClusterHtmlRendererTest.java +++ b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/ContentClusterHtmlRendererTest.java @@ -10,8 +10,6 @@ import org.junit.jupiter.api.BeforeEach; import org.junit.jupiter.api.Test; import java.io.IOException; -import java.io.StringWriter; -import java.io.Writer; import java.util.Collections; import java.util.Map; import java.util.TreeMap; diff --git a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/DatabaseHandlerTest.java b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/DatabaseHandlerTest.java index c07a29b3c1e..71ba160a314 100644 --- a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/DatabaseHandlerTest.java +++ b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/DatabaseHandlerTest.java @@ -45,7 +45,7 @@ public class DatabaseHandlerTest { final Object monitor = new Object(); final ClusterStateBundle dummyBundle; - Fixture() throws Exception { + Fixture() { dummyBundle = ClusterStateBundleUtil.makeBundle("distributor:2 storage:2", StateMapping.of("default", "distributor:2 storage:2 .0.s:d"), StateMapping.of("upsidedown", "distributor:2 .0.s:d storage:2")); diff --git a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/DummyCommunicator.java b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/DummyCommunicator.java index b82d4a135ae..682e36254c9 100644 --- a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/DummyCommunicator.java +++ b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/DummyCommunicator.java @@ -25,18 +25,15 @@ public class DummyCommunicator implements Communicator, NodeLookup { } static class DummyGetNodeStateRequest extends GetNodeStateRequest { - Waiter<GetNodeStateRequest> waiter; + final Waiter<GetNodeStateRequest> waiter; DummyGetNodeStateRequest(NodeInfo nodeInfo, Waiter<GetNodeStateRequest> waiter) { super(nodeInfo); - this.waiter = waiter; } @Override - public void abort() { - - } + public void abort() {} } public static class DummySetClusterStateRequest extends SetClusterStateRequest { diff --git a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/DummyVdsNode.java b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/DummyVdsNode.java index f2494ea0301..df7357f31da 100644 --- a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/DummyVdsNode.java +++ b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/DummyVdsNode.java @@ -61,14 +61,15 @@ public class DummyVdsNode { private boolean registeredInSlobrok = false; static class Req { - Request request; - long timeToReply; + final Request request; + final long timeToReply; Req(Request r, long timeToReply) { request = r; this.timeToReply = timeToReply; } } + static class BackOff implements BackOffPolicy { public void reset() {} public double get() { return 0.01; } @@ -118,7 +119,7 @@ public class DummyVdsNode { }; public DummyVdsNode(Timer timer, String[] slobrokConnectionSpecs, String clusterName, - NodeType nodeType, int index) throws Exception { + NodeType nodeType, int index) { this.timer = timer; this.slobrokConnectionSpecs = slobrokConnectionSpecs; this.clusterName = clusterName; @@ -249,12 +250,6 @@ public class DummyVdsNode { setNodeState(new NodeState(type, state)); } - public NodeState getNodeState() { - synchronized(timer) { - return nodeState; - } - } - List<ClusterState> getSystemStatesReceived() { synchronized(timer) { return clusterStateBundles.stream() diff --git a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/FleetControllerContextImplTest.java b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/FleetControllerContextImplTest.java index 96ce050f33b..b922011b4af 100644 --- a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/FleetControllerContextImplTest.java +++ b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/FleetControllerContextImplTest.java @@ -29,7 +29,7 @@ public class FleetControllerContextImplTest { } private static class MockLogger extends Logger { - public List<LogRecord> records = new ArrayList<>(); + public final List<LogRecord> records = new ArrayList<>(); public MockLogger() { super(MockLogger.class.getName(), null); diff --git a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/FleetControllerTest.java b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/FleetControllerTest.java index f43c5354be5..6abd5dae23f 100644 --- a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/FleetControllerTest.java +++ b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/FleetControllerTest.java @@ -24,7 +24,6 @@ import com.yahoo.vespa.clustercontroller.core.testutils.WaitTask; import com.yahoo.vespa.clustercontroller.core.testutils.Waiter; import com.yahoo.vespa.clustercontroller.utils.util.NoMetricReporter; import org.junit.jupiter.api.AfterEach; -import java.io.IOException; import java.time.Duration; import java.util.ArrayList; import java.util.Arrays; @@ -56,7 +55,7 @@ public abstract class FleetControllerTest implements Waiter { protected Slobrok slobrok; protected FleetControllerOptions options; ZooKeeperTestServer zooKeeperServer; - protected List<FleetController> fleetControllers = new ArrayList<>(); + protected final List<FleetController> fleetControllers = new ArrayList<>(); protected List<DummyVdsNode> nodes = new ArrayList<>(); private String testName; @@ -154,7 +153,7 @@ public abstract class FleetControllerTest implements Waiter { fleetControllers.forEach(f -> { try { f.shutdown(); - } catch (InterruptedException | IOException e) { + } catch (InterruptedException e) { throw new RuntimeException(e); } }); @@ -257,7 +256,7 @@ public abstract class FleetControllerTest implements Waiter { fleetControllers.forEach(f -> { try { f.shutdown(); - } catch (InterruptedException | IOException e) { + } catch (InterruptedException e) { throw new RuntimeException(e); } }); diff --git a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/GroupAutoTakedownTest.java b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/GroupAutoTakedownTest.java index f0c8503fed9..0f9fad2c76c 100644 --- a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/GroupAutoTakedownTest.java +++ b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/GroupAutoTakedownTest.java @@ -295,7 +295,7 @@ public class GroupAutoTakedownTest { } @Test - void previously_cleared_start_timestamps_are_not_reintroduced_on_up_edge() throws Exception { + void previously_cleared_start_timestamps_are_not_reintroduced_on_up_edge() { ClusterFixture fixture = createFixtureForAllUpHierarchicCluster( DistributionBuilder.withGroups(3).eachWithNodeCount(2), 0.51); diff --git a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/SystemStateBroadcasterTest.java b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/SystemStateBroadcasterTest.java index 6bc9f434ee6..1aa3222921d 100644 --- a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/SystemStateBroadcasterTest.java +++ b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/SystemStateBroadcasterTest.java @@ -319,7 +319,6 @@ public class SystemStateBroadcasterTest { // Type erasure of Waiter in mocked argument capture @Test - @SuppressWarnings("unchecked") void activation_not_sent_if_deferred_activation_is_disabled_in_state_bundle() { var f = StateActivationFixture.withTwoPhaseDisabled(); var cf = f.cf; diff --git a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/ZooKeeperDatabaseTest.java b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/ZooKeeperDatabaseTest.java index 79c03a67698..52bfd0e2dff 100644 --- a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/ZooKeeperDatabaseTest.java +++ b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/ZooKeeperDatabaseTest.java @@ -71,7 +71,7 @@ public class ZooKeeperDatabaseTest { } @Test - void storing_cluster_state_bundle_with_mismatching_expected_znode_version_throws_exception() throws Exception { + void storing_cluster_state_bundle_with_mismatching_expected_znode_version_throws_exception() { Throwable exception = assertThrows(CasWriteFailed.class, () -> { try (Fixture f = new Fixture()) { f.createDatabase(); @@ -82,7 +82,7 @@ public class ZooKeeperDatabaseTest { } @Test - void storing_cluster_state_version_with_mismatching_expected_znode_version_throws_exception() throws Exception { + void storing_cluster_state_version_with_mismatching_expected_znode_version_throws_exception() { Throwable exception = assertThrows(CasWriteFailed.class, () -> { try (Fixture f = new Fixture()) { f.createDatabase(); diff --git a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/matchers/HasMetricContext.java b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/matchers/HasMetricContext.java index c00076d0faa..92123752465 100644 --- a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/matchers/HasMetricContext.java +++ b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/matchers/HasMetricContext.java @@ -29,7 +29,7 @@ public class HasMetricContext extends BaseMatcher<MetricReporter.Context> { @Override public void describeTo(Description description) { - description.appendText(String.format("Context with dimensions %s", dimensions.toString())); + description.appendText(String.format("Context with dimensions %s", dimensions)); } @Override diff --git a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/mocks/TestEventLog.java b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/mocks/TestEventLog.java index b4b468ba70f..e076c4af1e7 100644 --- a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/mocks/TestEventLog.java +++ b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/mocks/TestEventLog.java @@ -10,28 +10,23 @@ import java.util.logging.Level; public class TestEventLog implements EventLogInterface { private StringBuilder events = new StringBuilder(); - private int eventCount = 0; - public void clear() { events = new StringBuilder(); eventCount = 0; } + public void clear() { events = new StringBuilder(); } public String toString() { return events.toString(); } - public int getEventCount() { return eventCount; } @Override public void add(Event e) { events.append("add(" + e.getDescription() + ")\n"); - ++eventCount; } @Override public void add(Event e, boolean logInfo) { events.append("add(" + e + ", log ? " + logInfo + ")\n"); - ++eventCount; } @Override public void addNodeOnlyEvent(NodeEvent e, Level level) { events.append("add(" + e + ", " + level + ")\n"); - ++eventCount; } @Override diff --git a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/restapiv2/StateRestApiTest.java b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/restapiv2/StateRestApiTest.java index b09069dbad7..f7403b45707 100644 --- a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/restapiv2/StateRestApiTest.java +++ b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/restapiv2/StateRestApiTest.java @@ -49,7 +49,7 @@ public abstract class StateRestApiTest { public String[] getUnitPath() { return path; } } - protected void setUp(boolean dontInitializeNode2) throws Exception { + protected void setUp(boolean dontInitializeNode2) { Distribution distribution = new Distribution(getSimpleGroupConfig(2, 10)); jsonWriter.setDefaultPathPrefix("/cluster/v2"); { |