diff options
author | Henning Baldersheim <balder@yahoo-inc.com> | 2021-03-11 15:53:02 +0100 |
---|---|---|
committer | Henning Baldersheim <balder@yahoo-inc.com> | 2021-03-11 15:53:02 +0100 |
commit | 07accb9f7c8860089b3286d3e286f6ea0f3094ab (patch) | |
tree | 40a616882edc98818d823a33bb9360f0b0269be5 /clustercontroller-core/src/main/java | |
parent | 0ea817a6c5490f7251f89c0e743d20270925c469 (diff) |
GC use of NodeState.getDiskCount and NodeState.getDiskStates.
Diffstat (limited to 'clustercontroller-core/src/main/java')
3 files changed, 11 insertions, 27 deletions
diff --git a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/ClusterControllerStateRestAPI.java b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/ClusterControllerStateRestAPI.java index cb138f4025b..169684aa742 100644 --- a/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/ClusterControllerStateRestAPI.java +++ b/clustercontroller-core/src/main/java/com/yahoo/vespa/clustercontroller/core/restapiv2/ClusterControllerStateRestAPI.java @@ -68,27 +68,26 @@ public class ClusterControllerStateRestAPI implements StateRestAPI { log.finest("Got getState() request"); UnitPathResolver<UnitResponse> resolver = new UnitPathResolver<>(fleetControllerResolver.getFleetControllers()); Request<? extends UnitResponse> req = resolver.visit( - request.getUnitPath(), new UnitPathResolver.Visitor<UnitResponse>() + request.getUnitPath(), new UnitPathResolver.Visitor<>() { @Override - public Request<? extends UnitResponse> visitGlobal() throws StateRestApiException { + public Request<? extends UnitResponse> visitGlobal() { return new ClusterListRequest(request.getRecursiveLevels(), fleetControllerResolver); } @Override - public Request<? extends UnitResponse> visitCluster(Id.Cluster id) throws StateRestApiException { + public Request<? extends UnitResponse> visitCluster(Id.Cluster id) { return new ClusterStateRequest(id, request.getRecursiveLevels()); } @Override - public Request<? extends UnitResponse> visitService(Id.Service id) throws StateRestApiException { + public Request<? extends UnitResponse> visitService(Id.Service id) { return new ServiceStateRequest(id, request.getRecursiveLevels()); } @Override - public Request<? extends UnitResponse> visitNode(Id.Node id) throws StateRestApiException { - return new NodeStateRequest(id, request.getRecursiveLevels(), - EnumSet.of(VerboseReport.STATISTICS)); + public Request<? extends UnitResponse> visitNode(Id.Node id) { + return new NodeStateRequest(id); } @Override - public Request<? extends UnitResponse> visitPartition(Id.Partition id) throws StateRestApiException { + public Request<? extends UnitResponse> visitPartition(Id.Partition id) { return new PartitionStateRequest(id, EnumSet.of(VerboseReport.STATISTICS)); } }); @@ -120,11 +119,11 @@ public class ClusterControllerStateRestAPI implements StateRestAPI { "State can only be set at cluster or node level") { @Override - public Request<? extends SetResponse> visitCluster(Id.Cluster id) throws StateRestApiException { + public Request<? extends SetResponse> visitCluster(Id.Cluster id) { return new SetNodeStatesForClusterRequest(id, request); } @Override - public Request<? extends SetResponse> visitNode(Id.Node id) throws StateRestApiException { + public Request<? extends SetResponse> visitNode(Id.Node id) { return new SetNodeStateRequest(id, request); } }); 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 7f1bfd20124..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 @@ -9,18 +9,12 @@ import com.yahoo.vespa.clustercontroller.core.restapiv2.Response; import com.yahoo.vespa.clustercontroller.utils.staterestapi.errors.MissingResourceException; import com.yahoo.vespa.clustercontroller.utils.staterestapi.errors.StateRestApiException; -import java.util.Set; - public class NodeStateRequest extends Request<Response.NodeResponse> { private final Id.Node id; - private final int recursive; - private final Set<VerboseReport> verboseReports; - public NodeStateRequest(Id.Node id, int recursive, Set<VerboseReport> verboseReports) { + public NodeStateRequest(Id.Node id) { super(MasterState.MUST_BE_MASTER); this.id = id; - this.recursive = recursive; - this.verboseReports = verboseReports; } @Override @@ -39,15 +33,6 @@ public class NodeStateRequest extends Request<Response.NodeResponse> { result.addState("unit", new Response.UnitStateImpl(info.getReportedState())); result.addState("user", new Response.UnitStateImpl(info.getWantedState())); - for (int i=0; i<info.getReportedState().getDiskCount(); ++i) { - Id.Partition partitionId = new Id.Partition(id, i); - if (recursive > 0) { - PartitionStateRequest psr = new PartitionStateRequest(partitionId, verboseReports); - result.addEntry("partition", String.valueOf(i), psr.calculateResult(context)); - } else { - result.addLink("partition", String.valueOf(i), partitionId.toString()); - } - } 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 9b07d30e9e3..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 @@ -26,7 +26,7 @@ public class ServiceStateRequest extends Request<Response.ServiceResponse> { Id.Node nodeId = new Id.Node(id, i); if (recursive > 0) { // Don't include per-node statistics when aggregating over all nodes - NodeStateRequest nsr = new NodeStateRequest(nodeId, recursive - 1, EnumSet.noneOf(VerboseReport.class)); + NodeStateRequest nsr = new NodeStateRequest(nodeId); result.addEntry("node", String.valueOf(i), nsr.calculateResult(context)); } else { result.addLink("node", String.valueOf(i), nodeId.toString()); |