From bed3abea6afed8459bbd0647ce3e5b5439c438aa Mon Sep 17 00:00:00 2001 From: Harald Musum Date: Fri, 12 Mar 2021 20:28:20 +0100 Subject: Revert "GC unused DiskState and add the partition metrics to node level." --- .../vespa/clustercontroller/core/NodeInfo.java | 6 +---- .../vespa/clustercontroller/core/restapiv2/Id.java | 1 + .../clustercontroller/core/restapiv2/Response.java | 5 ++++ .../core/restapiv2/requests/NodeStateRequest.java | 28 ---------------------- .../restapiv2/requests/PartitionStateRequest.java | 5 ++-- .../restapiv2/requests/ServiceStateRequest.java | 2 ++ .../clustercontroller/core/restapiv2/NodeTest.java | 10 -------- 7 files changed, 12 insertions(+), 45 deletions(-) (limited to 'clustercontroller-core') 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 f014690947d..6d97d9b2ce2 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 @@ -6,11 +6,7 @@ import com.yahoo.jrt.Target; import java.util.logging.Level; import com.yahoo.vdslib.distribution.Distribution; import com.yahoo.vdslib.distribution.Group; -import com.yahoo.vdslib.state.ClusterState; -import com.yahoo.vdslib.state.Node; -import com.yahoo.vdslib.state.NodeState; -import com.yahoo.vdslib.state.NodeType; -import com.yahoo.vdslib.state.State; +import com.yahoo.vdslib.state.*; import com.yahoo.vespa.clustercontroller.core.hostinfo.HostInfo; import com.yahoo.vespa.clustercontroller.core.rpc.RPCCommunicator; diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/Id.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/Id.java index d956afba48a..ed5af93d7fb 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/Id.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/Id.java @@ -60,6 +60,7 @@ public class Id { this.id = partition; } + public final int getPartitionIndex() { return id; } public String toString() { return super.toString() + "/" + id; } } diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/Response.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/Response.java index 82512262b4a..17949b82365 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/Response.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/Response.java @@ -1,6 +1,7 @@ // Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.clustercontroller.core.restapiv2; +import com.yahoo.vdslib.state.DiskState; import com.yahoo.vdslib.state.NodeState; import com.yahoo.vdslib.state.State; import com.yahoo.vespa.clustercontroller.utils.staterestapi.errors.InternalFailure; @@ -31,6 +32,10 @@ public class Response { this.id = parseId(ns.getState()); this.reason = ns.getDescription(); } + public UnitStateImpl(DiskState ds) throws StateRestApiException { + this.id = parseId(ds.getState()); + this.reason = ds.getDescription(); + } public String parseId(State id) throws StateRestApiException { switch (id) { diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/requests/NodeStateRequest.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/requests/NodeStateRequest.java index 1404508e2fe..e007e2cc243 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/requests/NodeStateRequest.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/requests/NodeStateRequest.java @@ -3,7 +3,6 @@ package com.yahoo.vespa.clustercontroller.core.restapiv2.requests; import com.yahoo.vespa.clustercontroller.core.NodeInfo; import com.yahoo.vespa.clustercontroller.core.RemoteClusterControllerTask; -import com.yahoo.vespa.clustercontroller.core.hostinfo.Metrics; import com.yahoo.vespa.clustercontroller.core.restapiv2.Id; import com.yahoo.vespa.clustercontroller.core.restapiv2.Request; import com.yahoo.vespa.clustercontroller.core.restapiv2.Response; @@ -33,34 +32,7 @@ public class NodeStateRequest extends Request { result.addState("generated", new Response.UnitStateImpl(context.currentConsolidatedState.getNodeState(id.getNode()))); result.addState("unit", new Response.UnitStateImpl(info.getReportedState())); result.addState("user", new Response.UnitStateImpl(info.getWantedState())); - if (info.isStorage()) { - fillInMetrics(context.cluster.getNodeInfo(id.getNode()).getHostInfo().getMetrics(), result); - } return result; } - private static void fillInMetrics(Metrics metrics, Response.NodeResponse result) { - for (Metrics.Metric metric: metrics.getMetrics()) { - fillInMetricValue(metric.getName(), metric.getValue(), result); - } - } - - private static void fillInMetricValue(String name, Metrics.Value value, Response.NodeResponse result) { - if (name.equals("vds.datastored.alldisks.docs")) { - if (value.getLast() == null) { - return; - } - result.addMetric("unique-document-count", value.getLast()); - } else if (name.equals("vds.datastored.alldisks.bytes")) { - if (value.getLast() == null) { - return; - } - result.addMetric("unique-document-total-size", value.getLast()); - } else if (name.equals("vds.datastored.alldisks.buckets")) { - if (value.getLast() == null) { - return; - } - result.addMetric("bucket-count", value.getLast()); - } - } } diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/requests/PartitionStateRequest.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/requests/PartitionStateRequest.java index b565bf0b572..bb42af45ef3 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/requests/PartitionStateRequest.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/requests/PartitionStateRequest.java @@ -1,6 +1,7 @@ // Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.clustercontroller.core.restapiv2.requests; +import com.yahoo.vdslib.state.DiskState; import com.yahoo.vdslib.state.NodeState; import com.yahoo.vespa.clustercontroller.core.RemoteClusterControllerTask; import com.yahoo.vespa.clustercontroller.core.hostinfo.Metrics; @@ -12,7 +13,6 @@ import com.yahoo.vespa.clustercontroller.utils.staterestapi.errors.StateRestApiE import java.util.Set; import java.util.logging.Logger; -//TODO Remove once we have ensured that partition level is no longer used (it has never been) public class PartitionStateRequest extends Request { private static final Logger log = Logger.getLogger(PartitionStateRequest.class.getName()); private final Id.Partition id; @@ -32,7 +32,8 @@ public class PartitionStateRequest extends Request { fillInMetrics(context.cluster.getNodeInfo(id.getNode()).getHostInfo().getMetrics(), result); } NodeState nodeState = context.currentConsolidatedState.getNodeState(id.getNode()); - result.addState("generated", new Response.UnitStateImpl(nodeState)); + DiskState diskState = new DiskState(); + result.addState("generated", new Response.UnitStateImpl(diskState)); return result; } diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/requests/ServiceStateRequest.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/requests/ServiceStateRequest.java index b5452af79cc..9dd5ed7b071 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/requests/ServiceStateRequest.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/requests/ServiceStateRequest.java @@ -7,6 +7,8 @@ import com.yahoo.vespa.clustercontroller.core.restapiv2.Request; import com.yahoo.vespa.clustercontroller.core.restapiv2.Response; import com.yahoo.vespa.clustercontroller.utils.staterestapi.errors.StateRestApiException; +import java.util.EnumSet; + public class ServiceStateRequest extends Request { private final Id.Service id; private final int recursive; diff --git a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/restapiv2/NodeTest.java b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/restapiv2/NodeTest.java index b00f46a3d00..67ae7911f80 100644 --- a/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/restapiv2/NodeTest.java +++ b/clustercontroller-core/src/test/java/com/yahoo/vespa/clustercontroller/core/restapiv2/NodeTest.java @@ -59,11 +59,6 @@ public class NodeTest extends StateRestApiTest { " \"state\": \"up\",\n" + " \"reason\": \"\"\n" + " }\n" + - " },\n" + - " \"metrics\": {\n" + - " \"bucket-count\": 1,\n" + - " \"unique-document-count\": 2,\n" + - " \"unique-document-total-size\": 3\n" + " }\n" + "}"; assertEquals(expected, jsonWriter.createJson(response).toString(2)); @@ -89,11 +84,6 @@ public class NodeTest extends StateRestApiTest { " \"state\": \"up\",\n" + " \"reason\": \"\"\n" + " }\n" + - " },\n" + - " \"metrics\": {\n" + - " \"bucket-count\": 1,\n" + - " \"unique-document-count\": 2,\n" + - " \"unique-document-total-size\": 3\n" + " }\n" + "}"; assertEquals(expected, jsonWriter.createJson(response).toString(2)); -- cgit v1.2.3