summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--documentapi/abi-spec.json102
-rwxr-xr-xdocumentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/ANDPolicy.java5
-rw-r--r--documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/AsyncInitializationPolicy.java22
-rwxr-xr-xdocumentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/DocumentProtocol.java12
-rw-r--r--documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/DocumentProtocolRoutingPolicy.java7
-rwxr-xr-xdocumentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/DocumentRouteSelectorPolicy.java8
-rwxr-xr-xdocumentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/ErrorPolicy.java6
-rwxr-xr-xdocumentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/ExternPolicy.java6
-rw-r--r--documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/ExternalSlobrokPolicy.java2
-rw-r--r--documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/LoadBalancer.java54
-rw-r--r--documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/LoadBalancerPolicy.java38
-rwxr-xr-xdocumentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/LocalServicePolicy.java16
-rw-r--r--documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/MessageTypePolicy.java10
-rwxr-xr-xdocumentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/RoundRobinPolicy.java5
-rwxr-xr-xdocumentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/RoutingPolicyRepository.java13
-rw-r--r--documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/StoragePolicy.java62
-rwxr-xr-xdocumentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/SubsetServicePolicy.java16
-rw-r--r--documentapi/src/main/java/com/yahoo/documentapi/metrics/DocumentProtocolMetricSet.java20
-rw-r--r--documentapi/src/test/java/com/yahoo/documentapi/messagebus/protocol/RoutingPolicyRepositoryTest.java4
-rw-r--r--documentapi/src/test/java/com/yahoo/documentapi/messagebus/protocol/test/LoadBalancerTestCase.java35
-rwxr-xr-xdocumentapi/src/test/java/com/yahoo/documentapi/messagebus/protocol/test/PolicyFactoryTestCase.java13
-rw-r--r--documentapi/src/test/java/com/yahoo/documentapi/messagebus/protocol/test/storagepolicy/Simulator.java6
-rw-r--r--messagebus/abi-spec.json3
-rw-r--r--messagebus/src/main/java/com/yahoo/messagebus/Protocol.java6
-rw-r--r--messagebus/src/main/java/com/yahoo/messagebus/metrics/CountMetric.java18
-rw-r--r--messagebus/src/main/java/com/yahoo/messagebus/metrics/Metric.java48
-rw-r--r--messagebus/src/main/java/com/yahoo/messagebus/metrics/MetricSet.java47
-rw-r--r--messagebus/src/main/java/com/yahoo/messagebus/metrics/NumberMetric.java40
-rw-r--r--messagebus/src/main/java/com/yahoo/messagebus/metrics/ValueMetric.java14
-rw-r--r--messagebus/src/main/java/com/yahoo/messagebus/metrics/package-info.java5
-rw-r--r--messagebus/src/main/java/com/yahoo/messagebus/test/SimpleProtocol.java12
-rw-r--r--messagebus/src/test/java/com/yahoo/messagebus/network/rpc/RPCNetworkTestCase.java16
-rw-r--r--messagebus/src/test/java/com/yahoo/messagebus/test/SimpleProtocolTestCase.java8
33 files changed, 153 insertions, 526 deletions
diff --git a/documentapi/abi-spec.json b/documentapi/abi-spec.json
index 663d04e3074..cbfe07eb93d 100644
--- a/documentapi/abi-spec.json
+++ b/documentapi/abi-spec.json
@@ -1421,8 +1421,7 @@
"public void <init>(java.lang.String)",
"public void select(com.yahoo.messagebus.routing.RoutingContext)",
"public void merge(com.yahoo.messagebus.routing.RoutingContext)",
- "public void destroy()",
- "public com.yahoo.messagebus.metrics.MetricSet getMetrics()"
+ "public void destroy()"
],
"fields": []
},
@@ -1472,8 +1471,6 @@
],
"methods": [
"public static java.util.Map parse(java.lang.String)",
- "public void <init>(java.util.Map)",
- "public void needAsynchronousInitialization()",
"public abstract void init()",
"public abstract void doSelect(com.yahoo.messagebus.routing.RoutingContext)",
"public void select(com.yahoo.messagebus.routing.RoutingContext)",
@@ -1725,7 +1722,6 @@
"public byte[] encode(com.yahoo.component.Version, com.yahoo.messagebus.Routable)",
"public com.yahoo.messagebus.Routable decode(com.yahoo.component.Version, byte[])",
"public java.util.List getRoutableTypes(com.yahoo.component.Version)",
- "public com.yahoo.messagebus.metrics.MetricSet getMetrics()",
"public final com.yahoo.document.DocumentTypeManager getDocumentTypeManager()"
],
"fields": [
@@ -1806,9 +1802,7 @@
"interface",
"abstract"
],
- "methods": [
- "public abstract com.yahoo.messagebus.metrics.MetricSet getMetrics()"
- ],
+ "methods": [],
"fields": []
},
"com.yahoo.documentapi.messagebus.protocol.DocumentReply": {
@@ -1842,7 +1836,6 @@
"public void select(com.yahoo.messagebus.routing.RoutingContext)",
"public void merge(com.yahoo.messagebus.routing.RoutingContext)",
"public void destroy()",
- "public com.yahoo.messagebus.metrics.MetricSet getMetrics()",
"public bridge synthetic void configure(com.yahoo.config.ConfigInstance)"
],
"fields": []
@@ -2010,8 +2003,7 @@
"public void <init>(java.lang.String)",
"public void select(com.yahoo.messagebus.routing.RoutingContext)",
"public void merge(com.yahoo.messagebus.routing.RoutingContext)",
- "public void destroy()",
- "public com.yahoo.messagebus.metrics.MetricSet getMetrics()"
+ "public void destroy()"
],
"fields": []
},
@@ -2029,8 +2021,7 @@
"public com.yahoo.jrt.slobrok.api.Mirror getMirror()",
"public void select(com.yahoo.messagebus.routing.RoutingContext)",
"public void merge(com.yahoo.messagebus.routing.RoutingContext)",
- "public void destroy()",
- "public com.yahoo.messagebus.metrics.MetricSet getMetrics()"
+ "public void destroy()"
],
"fields": []
},
@@ -2177,17 +2168,6 @@
],
"fields": []
},
- "com.yahoo.documentapi.messagebus.protocol.LoadBalancer$Metrics": {
- "superClass": "com.yahoo.messagebus.metrics.MetricSet",
- "interfaces": [],
- "attributes": [
- "public"
- ],
- "methods": [
- "public void <init>(java.lang.String)"
- ],
- "fields": []
- },
"com.yahoo.documentapi.messagebus.protocol.LoadBalancer$Node": {
"superClass": "java.lang.Object",
"interfaces": [],
@@ -2203,18 +2183,18 @@
]
},
"com.yahoo.documentapi.messagebus.protocol.LoadBalancer$NodeMetrics": {
- "superClass": "com.yahoo.messagebus.metrics.MetricSet",
+ "superClass": "java.lang.Object",
"interfaces": [],
"attributes": [
"public"
],
"methods": [
- "public void <init>(java.lang.String, com.yahoo.messagebus.metrics.MetricSet)"
+ "public void <init>()"
],
"fields": [
- "public com.yahoo.messagebus.metrics.CountMetric sent",
- "public com.yahoo.messagebus.metrics.CountMetric busy",
- "public com.yahoo.messagebus.metrics.ValueMetric weight"
+ "public java.util.concurrent.atomic.AtomicLong sent",
+ "public java.util.concurrent.atomic.AtomicLong busy",
+ "public double weight"
]
},
"com.yahoo.documentapi.messagebus.protocol.LoadBalancer": {
@@ -2224,7 +2204,7 @@
"public"
],
"methods": [
- "public void <init>(java.lang.String, java.lang.String, com.yahoo.documentapi.messagebus.protocol.LoadBalancer$Metrics)",
+ "public void <init>(java.lang.String)",
"public java.util.List getNodeWeights()",
"public int getIndex(java.lang.String)",
"public com.yahoo.documentapi.messagebus.protocol.LoadBalancer$Node getRecipient(com.yahoo.jrt.slobrok.api.Mirror$Entry[])",
@@ -2239,11 +2219,8 @@
"public"
],
"methods": [
- "public void <init>(java.lang.String)",
- "public void <init>(java.lang.String, java.util.Map)",
"public void doSelect(com.yahoo.messagebus.routing.RoutingContext)",
- "public void merge(com.yahoo.messagebus.routing.RoutingContext)",
- "public com.yahoo.messagebus.metrics.MetricSet getMetrics()"
+ "public void merge(com.yahoo.messagebus.routing.RoutingContext)"
],
"fields": []
},
@@ -2256,11 +2233,9 @@
"public"
],
"methods": [
- "public void <init>(java.lang.String)",
"public void select(com.yahoo.messagebus.routing.RoutingContext)",
"public void merge(com.yahoo.messagebus.routing.RoutingContext)",
- "public void destroy()",
- "public com.yahoo.messagebus.metrics.MetricSet getMetrics()"
+ "public void destroy()"
],
"fields": []
},
@@ -2290,11 +2265,9 @@
"public"
],
"methods": [
- "public void <init>(java.lang.String)",
"public void select(com.yahoo.messagebus.routing.RoutingContext)",
"public void merge(com.yahoo.messagebus.routing.RoutingContext)",
"public void destroy()",
- "public com.yahoo.messagebus.metrics.MetricSet getMetrics()",
"public void configure(com.yahoo.vespa.config.content.MessagetyperouteselectorpolicyConfig)",
"public bridge synthetic void configure(com.yahoo.config.ConfigInstance)"
],
@@ -2403,8 +2376,7 @@
"public void <init>()",
"public void select(com.yahoo.messagebus.routing.RoutingContext)",
"public void merge(com.yahoo.messagebus.routing.RoutingContext)",
- "public void destroy()",
- "public com.yahoo.messagebus.metrics.MetricSet getMetrics()"
+ "public void destroy()"
],
"fields": []
},
@@ -3023,21 +2995,7 @@
"public"
],
"methods": [
- "public void <init>()",
- "public com.yahoo.document.BucketId handleBucketIdCalculation(com.yahoo.messagebus.routing.RoutingContext)"
- ],
- "fields": []
- },
- "com.yahoo.documentapi.messagebus.protocol.StoragePolicy$DistributorSelectionLogic$InstabilityChecker": {
- "superClass": "java.lang.Object",
- "interfaces": [],
- "attributes": [
- "public"
- ],
- "methods": [
- "public void <init>(int)",
- "public boolean tooManyFailures(int)",
- "public void addFailure(java.lang.Integer)"
+ "public void <init>()"
],
"fields": []
},
@@ -3048,11 +3006,7 @@
"public"
],
"methods": [
- "public void <init>(com.yahoo.documentapi.messagebus.protocol.StoragePolicy$Parameters, com.yahoo.documentapi.messagebus.protocol.ExternalSlobrokPolicy)",
- "public void destroy()",
- "public java.lang.String getTargetSpec(com.yahoo.messagebus.routing.RoutingContext, com.yahoo.document.BucketId)",
- "public void handleWrongDistribution(com.yahoo.documentapi.messagebus.protocol.WrongDistributionReply, com.yahoo.messagebus.routing.RoutingContext)",
- "public void handleErrorReply(com.yahoo.messagebus.Reply, java.lang.Object)"
+ "public void destroy()"
],
"fields": []
},
@@ -3065,10 +3019,7 @@
],
"methods": [
"public void <init>()",
- "public void setRequiredUpPercentageToSendToKnownGoodNodes(int)",
- "public void updateValidTargets(com.yahoo.vdslib.state.ClusterState)",
"public abstract java.lang.String getTargetSpec(java.lang.Integer, com.yahoo.messagebus.routing.RoutingContext)",
- "public java.lang.String getRandomTargetSpec(com.yahoo.messagebus.routing.RoutingContext)",
"public void close()"
],
"fields": [
@@ -3087,15 +3038,12 @@
"public java.lang.String getClusterName()",
"public com.yahoo.documentapi.messagebus.protocol.StoragePolicy$SlobrokHostPatternGenerator createPatternGenerator()",
"public com.yahoo.documentapi.messagebus.protocol.StoragePolicy$HostFetcher createHostFetcher(com.yahoo.documentapi.messagebus.protocol.ExternalSlobrokPolicy)",
- "public com.yahoo.vdslib.distribution.Distribution createDistribution(com.yahoo.documentapi.messagebus.protocol.ExternalSlobrokPolicy)",
- "public int getAttemptRandomOnFailuresLimit()",
- "public int maxOldClusterStatesSeenBeforeThrowingCachedState()",
- "public int getRequiredUpPercentageToSendToKnownGoodNodes()"
+ "public com.yahoo.vdslib.distribution.Distribution createDistribution(com.yahoo.documentapi.messagebus.protocol.ExternalSlobrokPolicy)"
],
"fields": [
- "protected java.lang.String clusterName",
- "protected java.lang.String distributionConfigId",
- "protected com.yahoo.documentapi.messagebus.protocol.StoragePolicy$SlobrokHostPatternGenerator slobrokHostPatternGenerator"
+ "protected final java.lang.String clusterName",
+ "protected final java.lang.String distributionConfigId",
+ "protected final com.yahoo.documentapi.messagebus.protocol.StoragePolicy$SlobrokHostPatternGenerator slobrokHostPatternGenerator"
]
},
"com.yahoo.documentapi.messagebus.protocol.StoragePolicy$SlobrokHostFetcher": {
@@ -3105,7 +3053,6 @@
"public"
],
"methods": [
- "public void <init>(com.yahoo.documentapi.messagebus.protocol.StoragePolicy$SlobrokHostPatternGenerator, com.yahoo.documentapi.messagebus.protocol.ExternalSlobrokPolicy)",
"public com.yahoo.jrt.slobrok.api.IMirror getMirror(com.yahoo.messagebus.routing.RoutingContext)",
"public java.lang.String getTargetSpec(java.lang.Integer, com.yahoo.messagebus.routing.RoutingContext)"
],
@@ -3118,7 +3065,6 @@
"public"
],
"methods": [
- "public void <init>(java.lang.String)",
"public java.lang.String getDistributorHostPattern(java.lang.Integer)"
],
"fields": []
@@ -3136,12 +3082,10 @@
"public void init()",
"public void doSelect(com.yahoo.messagebus.routing.RoutingContext)",
"public void merge(com.yahoo.messagebus.routing.RoutingContext)",
- "public void destroy()",
- "public com.yahoo.messagebus.metrics.MetricSet getMetrics()"
+ "public void destroy()"
],
"fields": [
- "public static final java.lang.String owningBucketStates",
- "public static final java.lang.String upStates"
+ "public static final java.lang.String owningBucketStates"
]
},
"com.yahoo.documentapi.messagebus.protocol.SubsetServicePolicy": {
@@ -3153,11 +3097,9 @@
"public"
],
"methods": [
- "public void <init>(java.lang.String)",
"public void select(com.yahoo.messagebus.routing.RoutingContext)",
"public void merge(com.yahoo.messagebus.routing.RoutingContext)",
- "public void destroy()",
- "public com.yahoo.messagebus.metrics.MetricSet getMetrics()"
+ "public void destroy()"
],
"fields": []
},
diff --git a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/ANDPolicy.java b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/ANDPolicy.java
index dbf68106e07..5e6aae46989 100755
--- a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/ANDPolicy.java
+++ b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/ANDPolicy.java
@@ -1,7 +1,6 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.documentapi.messagebus.protocol;
-import com.yahoo.messagebus.metrics.MetricSet;
import com.yahoo.messagebus.routing.Hop;
import com.yahoo.messagebus.routing.Route;
import com.yahoo.messagebus.routing.RoutingContext;
@@ -60,8 +59,4 @@ public class ANDPolicy implements DocumentProtocolRoutingPolicy {
public void destroy() {
}
-
- public MetricSet getMetrics() {
- return null;
- }
}
diff --git a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/AsyncInitializationPolicy.java b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/AsyncInitializationPolicy.java
index cbcea4775b4..90fc6de57c7 100644
--- a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/AsyncInitializationPolicy.java
+++ b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/AsyncInitializationPolicy.java
@@ -2,13 +2,13 @@
package com.yahoo.documentapi.messagebus.protocol;
import com.yahoo.log.LogLevel;
-import com.yahoo.messagebus.*;
-import com.yahoo.messagebus.metrics.MetricSet;
+import com.yahoo.messagebus.EmptyReply;
+import com.yahoo.messagebus.ErrorCode;
+import com.yahoo.messagebus.Reply;
import com.yahoo.messagebus.routing.RoutingContext;
import java.io.PrintWriter;
import java.io.StringWriter;
-import java.util.List;
import java.util.Map;
import java.util.TreeMap;
import java.util.concurrent.ScheduledThreadPoolExecutor;
@@ -26,17 +26,17 @@ public abstract class AsyncInitializationPolicy implements DocumentProtocolRouti
NOT_STARTED,
RUNNING,
DONE
- };
+ }
private static final Logger log = Logger.getLogger(AsyncInitializationPolicy.class.getName());
- InitState initState;
- ScheduledThreadPoolExecutor executor;
- Exception initException;
- boolean syncInit = true;
+ private InitState initState;
+ private ScheduledThreadPoolExecutor executor;
+ private Exception initException;
+ private boolean syncInit = true;
public static Map<String, String> parse(String param) {
- Map<String, String> map = new TreeMap<String, String>();
+ Map<String, String> map = new TreeMap<>();
if (param != null) {
String[] p = param.split(";");
@@ -54,11 +54,11 @@ public abstract class AsyncInitializationPolicy implements DocumentProtocolRouti
return map;
}
- public AsyncInitializationPolicy(Map<String, String> params) {
+ AsyncInitializationPolicy() {
initState = InitState.NOT_STARTED;
}
- public void needAsynchronousInitialization() {
+ void needAsynchronousInitialization() {
syncInit = false;
}
diff --git a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/DocumentProtocol.java b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/DocumentProtocol.java
index e627316de30..16ab9a017d0 100755
--- a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/DocumentProtocol.java
+++ b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/DocumentProtocol.java
@@ -8,18 +8,15 @@ import com.yahoo.component.VersionSpecification;
import com.yahoo.document.DocumentTypeManager;
import com.yahoo.document.DocumentTypeManagerConfigurer;
import com.yahoo.documentapi.messagebus.loadtypes.LoadTypeSet;
-import com.yahoo.documentapi.metrics.DocumentProtocolMetricSet;
import com.yahoo.messagebus.ErrorCode;
import com.yahoo.messagebus.Protocol;
import com.yahoo.messagebus.Reply;
import com.yahoo.messagebus.Routable;
-import com.yahoo.messagebus.metrics.MetricSet;
import com.yahoo.messagebus.routing.RoutingContext;
import com.yahoo.messagebus.routing.RoutingNodeIterator;
import com.yahoo.messagebus.routing.RoutingPolicy;
import com.yahoo.text.Utf8String;
-import java.util.Arrays;
import java.util.Collections;
import java.util.HashSet;
import java.util.LinkedList;
@@ -35,8 +32,7 @@ import java.util.logging.Logger;
public class DocumentProtocol implements Protocol {
private static final Logger log = Logger.getLogger(DocumentProtocol.class.getName());
- private final DocumentProtocolMetricSet metrics = new DocumentProtocolMetricSet();
- private final RoutingPolicyRepository routingPolicyRepository = new RoutingPolicyRepository(metrics);
+ private final RoutingPolicyRepository routingPolicyRepository = new RoutingPolicyRepository();
private final RoutableRepository routableRepository;
private final DocumentTypeManager docMan;
@@ -233,7 +229,7 @@ public class DocumentProtocol implements Protocol {
private final int val;
- private Priority(int val) {
+ Priority(int val) {
this.val = val;
}
@@ -563,9 +559,5 @@ public class DocumentProtocol implements Protocol {
return routableRepository.getRoutableTypes(version);
}
- public MetricSet getMetrics() {
- return metrics;
- }
-
final public DocumentTypeManager getDocumentTypeManager() { return docMan; }
}
diff --git a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/DocumentProtocolRoutingPolicy.java b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/DocumentProtocolRoutingPolicy.java
index 574370d14e8..77bc904ab12 100644
--- a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/DocumentProtocolRoutingPolicy.java
+++ b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/DocumentProtocolRoutingPolicy.java
@@ -1,18 +1,11 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.documentapi.messagebus.protocol;
-import com.yahoo.messagebus.metrics.MetricSet;
import com.yahoo.messagebus.routing.RoutingPolicy;
-import java.util.List;
-import java.util.Map;
-import java.util.TreeMap;
/**
* @author thomasg
*/
public interface DocumentProtocolRoutingPolicy extends RoutingPolicy {
-
- MetricSet getMetrics();
-
}
diff --git a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/DocumentRouteSelectorPolicy.java b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/DocumentRouteSelectorPolicy.java
index c3204c7b5e2..bdb65b28de0 100755
--- a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/DocumentRouteSelectorPolicy.java
+++ b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/DocumentRouteSelectorPolicy.java
@@ -2,15 +2,11 @@
package com.yahoo.documentapi.messagebus.protocol;
import com.yahoo.config.subscription.ConfigSubscriber;
-import com.yahoo.document.Document;
import com.yahoo.document.DocumentGet;
-import com.yahoo.document.DocumentPut;
-import com.yahoo.document.DocumentType;
import com.yahoo.document.select.DocumentSelector;
import com.yahoo.document.select.Result;
import com.yahoo.log.LogLevel;
import com.yahoo.messagebus.Message;
-import com.yahoo.messagebus.metrics.MetricSet;
import com.yahoo.messagebus.routing.Route;
import com.yahoo.messagebus.routing.RoutingContext;
@@ -181,8 +177,4 @@ public class DocumentRouteSelectorPolicy
}
}
- @Override
- public MetricSet getMetrics() {
- return null;
- }
}
diff --git a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/ErrorPolicy.java b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/ErrorPolicy.java
index b0b662d1e70..f70128618c5 100755
--- a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/ErrorPolicy.java
+++ b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/ErrorPolicy.java
@@ -2,7 +2,6 @@
package com.yahoo.documentapi.messagebus.protocol;
import com.yahoo.messagebus.EmptyReply;
-import com.yahoo.messagebus.metrics.MetricSet;
import com.yahoo.messagebus.routing.RoutingContext;
/**
@@ -36,9 +35,4 @@ public class ErrorPolicy implements DocumentProtocolRoutingPolicy {
public void destroy() {
}
-
-
- public MetricSet getMetrics() {
- return null;
- }
}
diff --git a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/ExternPolicy.java b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/ExternPolicy.java
index 051ec44dd07..312fd6e5964 100755
--- a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/ExternPolicy.java
+++ b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/ExternPolicy.java
@@ -6,7 +6,6 @@ import com.yahoo.jrt.Transport;
import com.yahoo.jrt.slobrok.api.Mirror;
import com.yahoo.jrt.slobrok.api.SlobrokList;
import com.yahoo.messagebus.ErrorCode;
-import com.yahoo.messagebus.metrics.MetricSet;
import com.yahoo.messagebus.routing.Hop;
import com.yahoo.messagebus.routing.Route;
import com.yahoo.messagebus.routing.RoutingContext;
@@ -141,9 +140,4 @@ public class ExternPolicy implements DocumentProtocolRoutingPolicy {
mirror.shutdown();
orb.transport().shutdown().join();
}
-
- @Override
- public MetricSet getMetrics() {
- return null;
- }
}
diff --git a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/ExternalSlobrokPolicy.java b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/ExternalSlobrokPolicy.java
index 995c8579e00..3ebe5b7281e 100644
--- a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/ExternalSlobrokPolicy.java
+++ b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/ExternalSlobrokPolicy.java
@@ -29,7 +29,7 @@ public abstract class ExternalSlobrokPolicy extends AsyncInitializationPolicy im
public ExternalSlobrokPolicy(Map<String, String> param) {
- super(param);
+ super();
String conf = param.get("config");
if (conf != null) {
diff --git a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/LoadBalancer.java b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/LoadBalancer.java
index 6a27546ce58..167a480e1aa 100644
--- a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/LoadBalancer.java
+++ b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/LoadBalancer.java
@@ -2,12 +2,10 @@
package com.yahoo.documentapi.messagebus.protocol;
import com.yahoo.jrt.slobrok.api.Mirror;
-import com.yahoo.messagebus.metrics.CountMetric;
-import com.yahoo.messagebus.metrics.MetricSet;
-import com.yahoo.messagebus.metrics.ValueMetric;
-import java.util.ArrayList;
import java.util.List;
+import java.util.concurrent.CopyOnWriteArrayList;
+import java.util.concurrent.atomic.AtomicLong;
/**
* Load balances over a set of nodes based on statistics gathered from those nodes.
@@ -16,24 +14,10 @@ import java.util.List;
*/
public class LoadBalancer {
- public static class NodeMetrics extends MetricSet {
- public CountMetric sent = new CountMetric("sent", this);
- public CountMetric busy = new CountMetric("busy", this);
- public ValueMetric<Double> weight = new ValueMetric<Double>("weight", 1.0, this);
-
- public NodeMetrics(String name, MetricSet owner) {
- super(name);
- owner.addMetric(this);
- }
- }
-
- public static class Metrics extends MetricSet {
- MetricSet targets = new MetricSet("nodes");
-
- public Metrics(String name) {
- super(name);
- addMetric(targets);
- }
+ public static class NodeMetrics {
+ public AtomicLong sent = new AtomicLong();
+ public AtomicLong busy = new AtomicLong();
+ public double weight = 1.0;
}
public static class Node {
@@ -44,14 +28,12 @@ public class LoadBalancer {
}
/** Statistics on each node we are load balancing over. Populated lazily. */
- private List<NodeMetrics> nodeWeights = new ArrayList<NodeMetrics>();
+ private List<NodeMetrics> nodeWeights = new CopyOnWriteArrayList<>();
- private Metrics metrics;
private String cluster;
private double position = 0.0;
- public LoadBalancer(String cluster, String session, Metrics metrics) {
- this.metrics = metrics;
+ public LoadBalancer(String cluster) {
this.cluster = cluster;
}
@@ -88,7 +70,7 @@ public class LoadBalancer {
for (Mirror.Entry entry : choices) {
NodeMetrics nodeMetrics = getNodeMetrics(entry);
- weightSum += nodeMetrics.weight.get();
+ weightSum += nodeMetrics.weight;
if (weightSum > position) {
selectedNode = new Node(entry, nodeMetrics);
@@ -100,7 +82,7 @@ public class LoadBalancer {
selectedNode = new Node(choices[0], getNodeMetrics(choices[0]));
}
position += 1.0;
- selectedNode.metrics.sent.inc(1);
+ selectedNode.metrics.sent.incrementAndGet();
return selectedNode;
}
@@ -116,7 +98,7 @@ public class LoadBalancer {
NodeMetrics nodeMetrics = nodeWeights.get(index);
if (nodeMetrics == null) { // initialize statistics for this node
- nodeMetrics = new NodeMetrics("node_" + index, metrics.targets);
+ nodeMetrics = new NodeMetrics();
nodeWeights.set(index, nodeMetrics);
}
return nodeMetrics;
@@ -126,25 +108,25 @@ public class LoadBalancer {
private void increaseWeights() {
for (NodeMetrics n : nodeWeights) {
if (n == null) continue;
- double want = n.weight.get() * 1.01010101010101010101;
+ double want = n.weight * 1.01010101010101010101;
if (want >= 1.0) {
- n.weight.set(want);
+ n.weight = want;
} else {
- n.weight.set(1.0);
+ n.weight = 1.0;
}
}
}
public void received(Node node, boolean busy) {
if (busy) {
- double wantWeight = node.metrics.weight.get() - 0.01;
+ double wantWeight = node.metrics.weight - 0.01;
if (wantWeight < 1.0) {
increaseWeights();
- node.metrics.weight.set(1.0);
+ node.metrics.weight = 1.0;
} else {
- node.metrics.weight.set(wantWeight);
+ node.metrics.weight = wantWeight;
}
- node.metrics.busy.inc(1);
+ node.metrics.busy.incrementAndGet();
}
}
diff --git a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/LoadBalancerPolicy.java b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/LoadBalancerPolicy.java
index 0be132c440c..7c5345351a8 100644
--- a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/LoadBalancerPolicy.java
+++ b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/LoadBalancerPolicy.java
@@ -1,25 +1,15 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.documentapi.messagebus.protocol;
-import com.yahoo.config.subscription.ConfigSourceSet;
-import com.yahoo.config.subscription.ConfigSubscriber;
-import com.yahoo.jrt.Supervisor;
-import com.yahoo.jrt.Transport;
-import com.yahoo.jrt.slobrok.api.IMirror;
-import com.yahoo.jrt.slobrok.api.SlobrokList;
import com.yahoo.jrt.slobrok.api.Mirror;
import com.yahoo.messagebus.ErrorCode;
import com.yahoo.messagebus.Reply;
-import com.yahoo.messagebus.metrics.MetricSet;
import com.yahoo.messagebus.routing.Hop;
import com.yahoo.messagebus.routing.Route;
import com.yahoo.messagebus.routing.RoutingContext;
import com.yahoo.messagebus.routing.RoutingNodeIterator;
-import com.yahoo.cloud.config.SlobroksConfig;
import java.util.Map;
-import java.util.concurrent.atomic.AtomicLong;
-import java.util.logging.Logger;
/**
* Routing policy to load balance between nodes in a randomly distributed cluster, such as a docproc cluster.
@@ -33,37 +23,35 @@ import java.util.logging.Logger;
* @author <a href="mailto:humbe@yahoo-inc.com">Haakon Humberset</a>
*/
public class LoadBalancerPolicy extends ExternalSlobrokPolicy {
- String cluster = null;
- String session = null;
- private String pattern = null;
+ private final String session;
+ private final String pattern;
- LoadBalancer.Metrics metrics;
- LoadBalancer loadBalancer;
+ private LoadBalancer loadBalancer;
- public LoadBalancerPolicy(String param) {
- this(param, parse(param));
+ LoadBalancerPolicy(String param) {
+ this(parse(param));
}
- public LoadBalancerPolicy(String param, Map<String, String> params) {
+ private LoadBalancerPolicy(Map<String, String> params) {
super(params);
- cluster = params.get("cluster");
+ String cluster = params.get("cluster");
session = params.get("session");
if (cluster == null) {
error = "Required parameter pattern not set";
+ pattern = null;
return;
}
if (session == null) {
error = "Required parameter session not set";
+ pattern = null;
return;
}
- metrics = new LoadBalancer.Metrics(param);
- metrics.setXmlTagName("loadbalancer");
pattern = cluster + "/*/" + session;
- loadBalancer = new LoadBalancer(cluster, session, metrics);
+ loadBalancer = new LoadBalancer(cluster);
}
@Override
@@ -86,7 +74,7 @@ public class LoadBalancerPolicy extends ExternalSlobrokPolicy {
@return Returns a hop representing the TCP address of the target, or null if none could be found.
*/
- LoadBalancer.Node getRecipient(RoutingContext context) {
+ private LoadBalancer.Node getRecipient(RoutingContext context) {
Mirror.Entry [] lastLookup = lookup(context, pattern);
return loadBalancer.getRecipient(lastLookup);
}
@@ -106,8 +94,4 @@ public class LoadBalancerPolicy extends ExternalSlobrokPolicy {
context.setReply(reply);
}
-
- public MetricSet getMetrics() {
- return metrics;
- }
}
diff --git a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/LocalServicePolicy.java b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/LocalServicePolicy.java
index e27479a4995..eb56a85e378 100755
--- a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/LocalServicePolicy.java
+++ b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/LocalServicePolicy.java
@@ -2,8 +2,10 @@
package com.yahoo.documentapi.messagebus.protocol;
import com.yahoo.jrt.slobrok.api.Mirror;
-import com.yahoo.messagebus.metrics.MetricSet;
-import com.yahoo.messagebus.routing.*;
+import com.yahoo.messagebus.routing.Hop;
+import com.yahoo.messagebus.routing.Route;
+import com.yahoo.messagebus.routing.RoutingContext;
+import com.yahoo.messagebus.routing.VerbatimDirective;
import java.util.ArrayList;
import java.util.HashMap;
@@ -18,7 +20,7 @@ import java.util.Map;
public class LocalServicePolicy implements DocumentProtocolRoutingPolicy {
private final String localAddress;
- private Map<String, CacheEntry> cache = new HashMap<String, CacheEntry>();
+ private Map<String, CacheEntry> cache = new HashMap<>();
/**
* Constructs a policy that will choose local services that match the slobrok pattern in which this policy occured.
@@ -26,7 +28,7 @@ public class LocalServicePolicy implements DocumentProtocolRoutingPolicy {
*
* @param param The address to use for this, if empty this will resolve to hostname.
*/
- public LocalServicePolicy(String param) {
+ LocalServicePolicy(String param) {
localAddress = (param != null && param.length() > 0) ? param : null;
}
@@ -107,7 +109,7 @@ public class LocalServicePolicy implements DocumentProtocolRoutingPolicy {
* Defines the necessary cache data.
*/
private class CacheEntry {
- private final List<Hop> recipients = new ArrayList<Hop>();
+ private final List<Hop> recipients = new ArrayList<>();
private int generation = 0;
private int offset = 0;
}
@@ -131,8 +133,4 @@ public class LocalServicePolicy implements DocumentProtocolRoutingPolicy {
public void destroy() {
}
-
- public MetricSet getMetrics() {
- return null;
- }
}
diff --git a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/MessageTypePolicy.java b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/MessageTypePolicy.java
index a5b3accac68..4226c1e6cac 100644
--- a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/MessageTypePolicy.java
+++ b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/MessageTypePolicy.java
@@ -2,7 +2,6 @@
package com.yahoo.documentapi.messagebus.protocol;
import com.yahoo.config.subscription.ConfigSubscriber;
-import com.yahoo.messagebus.metrics.MetricSet;
import com.yahoo.messagebus.routing.Route;
import com.yahoo.messagebus.routing.RoutingContext;
import com.yahoo.vespa.config.content.MessagetyperouteselectorpolicyConfig;
@@ -15,11 +14,11 @@ import java.util.concurrent.atomic.AtomicReference;
*/
public class MessageTypePolicy implements DocumentProtocolRoutingPolicy, ConfigSubscriber.SingleSubscriber<MessagetyperouteselectorpolicyConfig> {
- private final AtomicReference<Map<Integer, Route>> configRef = new AtomicReference<Map<Integer, Route>>();
+ private final AtomicReference<Map<Integer, Route>> configRef = new AtomicReference<>();
private ConfigSubscriber subscriber;
private volatile Route defaultRoute;
- public MessageTypePolicy(String configId) {
+ MessageTypePolicy(String configId) {
subscriber = new ConfigSubscriber();
subscriber.subscribe(this, MessagetyperouteselectorpolicyConfig.class, configId);
}
@@ -45,11 +44,6 @@ public class MessageTypePolicy implements DocumentProtocolRoutingPolicy, ConfigS
}
@Override
- public MetricSet getMetrics() {
- return null;
- }
-
- @Override
public void configure(MessagetyperouteselectorpolicyConfig cfg) {
Map<Integer, Route> h = new HashMap<>();
for (MessagetyperouteselectorpolicyConfig.Route selector : cfg.route()) {
diff --git a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/RoundRobinPolicy.java b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/RoundRobinPolicy.java
index 32becdb43fe..244d101b36f 100755
--- a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/RoundRobinPolicy.java
+++ b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/RoundRobinPolicy.java
@@ -6,7 +6,6 @@ import com.yahoo.messagebus.EmptyReply;
import com.yahoo.messagebus.Error;
import com.yahoo.messagebus.ErrorCode;
import com.yahoo.messagebus.Reply;
-import com.yahoo.messagebus.metrics.MetricSet;
import com.yahoo.messagebus.routing.Hop;
import com.yahoo.messagebus.routing.Route;
import com.yahoo.messagebus.routing.RoutingContext;
@@ -118,8 +117,4 @@ public class RoundRobinPolicy implements DocumentProtocolRoutingPolicy {
public void destroy() {
}
-
- public MetricSet getMetrics() {
- return null;
- }
}
diff --git a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/RoutingPolicyRepository.java b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/RoutingPolicyRepository.java
index 05bbb919805..098e0efc41c 100755
--- a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/RoutingPolicyRepository.java
+++ b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/RoutingPolicyRepository.java
@@ -1,7 +1,6 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.documentapi.messagebus.protocol;
-import com.yahoo.documentapi.metrics.DocumentProtocolMetricSet;
import com.yahoo.messagebus.routing.RoutingPolicy;
import com.yahoo.log.LogLevel;
@@ -16,10 +15,8 @@ class RoutingPolicyRepository {
private static final Logger log = Logger.getLogger(RoutingPolicyRepository.class.getName());
private final Map<String, RoutingPolicyFactory> factories = new ConcurrentHashMap<String, RoutingPolicyFactory>();
- private final DocumentProtocolMetricSet metrics;
- RoutingPolicyRepository(DocumentProtocolMetricSet metrics) {
- this.metrics = metrics;
+ RoutingPolicyRepository() {
}
/**
@@ -38,7 +35,7 @@ class RoutingPolicyRepository {
* @param name The name of the factory to return.
* @return The routing policy factory matching the criteria, or null.
*/
- RoutingPolicyFactory getFactory(String name) {
+ private RoutingPolicyFactory getFactory(String name) {
return factories.get(name);
}
@@ -55,7 +52,7 @@ class RoutingPolicyRepository {
log.log(LogLevel.ERROR, "No routing policy factory found for name '" + name + "'.");
return null;
}
- final DocumentProtocolRoutingPolicy ret = factory.createPolicy(param);
+ DocumentProtocolRoutingPolicy ret = factory.createPolicy(param);
if (ret == null) {
log.log(LogLevel.ERROR, "Routing policy factory " + factory.getClass().getName() + " failed to create a " +
@@ -63,10 +60,6 @@ class RoutingPolicyRepository {
return null;
}
- if (ret.getMetrics() != null) {
- metrics.routingPolicyMetrics.addMetric(ret.getMetrics());
- }
-
return ret;
}
}
diff --git a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/StoragePolicy.java b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/StoragePolicy.java
index 22f7a491056..341589643d2 100644
--- a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/StoragePolicy.java
+++ b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/StoragePolicy.java
@@ -8,10 +8,16 @@ import com.yahoo.document.BucketIdFactory;
import com.yahoo.jrt.slobrok.api.IMirror;
import com.yahoo.jrt.slobrok.api.Mirror;
import com.yahoo.log.LogLevel;
-import com.yahoo.messagebus.*;
+import com.yahoo.messagebus.EmptyReply;
import com.yahoo.messagebus.Error;
-import com.yahoo.messagebus.metrics.MetricSet;
-import com.yahoo.messagebus.routing.*;
+import com.yahoo.messagebus.ErrorCode;
+import com.yahoo.messagebus.Message;
+import com.yahoo.messagebus.Reply;
+import com.yahoo.messagebus.routing.Hop;
+import com.yahoo.messagebus.routing.Route;
+import com.yahoo.messagebus.routing.RoutingContext;
+import com.yahoo.messagebus.routing.RoutingNodeIterator;
+import com.yahoo.messagebus.routing.VerbatimDirective;
import com.yahoo.vdslib.distribution.Distribution;
import com.yahoo.vdslib.state.ClusterState;
import com.yahoo.vdslib.state.Node;
@@ -40,12 +46,12 @@ public class StoragePolicy extends ExternalSlobrokPolicy {
private static final Logger log = Logger.getLogger(StoragePolicy.class.getName());
public static final String owningBucketStates = "uim";
- public static final String upStates = "ui";
+ private static final String upStates = "ui";
/** This class merely generates slobrok a host pattern for a given distributor. */
public static class SlobrokHostPatternGenerator {
private final String clusterName;
- public SlobrokHostPatternGenerator(String clusterName) { this.clusterName = clusterName; }
+ SlobrokHostPatternGenerator(String clusterName) { this.clusterName = clusterName; }
/**
* Find host pattern of the hosts that are valid targets for this request.
@@ -63,9 +69,9 @@ public class StoragePolicy extends ExternalSlobrokPolicy {
private int totalTargets = 1;
protected final Random randomizer = new Random(12345); // Use same randomizer each time to make unit testing easy.
- public void setRequiredUpPercentageToSendToKnownGoodNodes(int percent) { this.requiredUpPercentageToSendToKnownGoodNodes = percent; }
+ void setRequiredUpPercentageToSendToKnownGoodNodes(int percent) { this.requiredUpPercentageToSendToKnownGoodNodes = percent; }
- public void updateValidTargets(ClusterState state) {
+ void updateValidTargets(ClusterState state) {
List<Integer> validRandomTargets = new ArrayList<>();
for (int i=0; i<state.getNodeCount(NodeType.DISTRIBUTOR); ++i) {
if (state.getNodeState(new Node(NodeType.DISTRIBUTOR, i)).getState().oneOf(upStates)) validRandomTargets.add(i);
@@ -74,7 +80,7 @@ public class StoragePolicy extends ExternalSlobrokPolicy {
this.totalTargets = state.getNodeCount(NodeType.DISTRIBUTOR);
}
public abstract String getTargetSpec(Integer distributor, RoutingContext context);
- public String getRandomTargetSpec(RoutingContext context) {
+ String getRandomTargetSpec(RoutingContext context) {
// Try to use list of random targets, if at least X % of the nodes are up
while (100 * validRandomTargets.size() / totalTargets >= requiredUpPercentageToSendToKnownGoodNodes) {
int randIndex = randomizer.nextInt(validRandomTargets.size());
@@ -96,7 +102,7 @@ public class StoragePolicy extends ExternalSlobrokPolicy {
private final SlobrokHostPatternGenerator patternGenerator;
ExternalSlobrokPolicy policy;
- public SlobrokHostFetcher(SlobrokHostPatternGenerator patternGenerator, ExternalSlobrokPolicy policy) {
+ SlobrokHostFetcher(SlobrokHostPatternGenerator patternGenerator, ExternalSlobrokPolicy policy) {
this.patternGenerator = patternGenerator;
this.policy = policy;
}
@@ -189,9 +195,9 @@ public class StoragePolicy extends ExternalSlobrokPolicy {
/** Class parsing the semicolon separated parameter string and exposes the appropriate value to the policy. */
public static class Parameters {
- protected String clusterName = null;
- protected String distributionConfigId = null;
- protected SlobrokHostPatternGenerator slobrokHostPatternGenerator = null;
+ protected final String clusterName;
+ protected final String distributionConfigId;
+ protected final SlobrokHostPatternGenerator slobrokHostPatternGenerator;
public Parameters(Map<String, String> params) {
clusterName = params.get("cluster");
@@ -222,26 +228,25 @@ public class StoragePolicy extends ExternalSlobrokPolicy {
* When we have gotten this amount of failures from a node (Any kind of failures). We try to send to a random other node, just to see if the
* failure was related to node being bad. (Hard to detect from failure)
*/
- public int getAttemptRandomOnFailuresLimit() { return 5; }
+ int getAttemptRandomOnFailuresLimit() { return 5; }
/**
* If we receive more than this number of wrong distribution replies with old cluster states, we throw the current cached state and takes the
* old one. This guards us against version resets.
*/
- public int maxOldClusterStatesSeenBeforeThrowingCachedState() { return 20; }
+ int maxOldClusterStatesSeenBeforeThrowingCachedState() { return 20; }
/**
* When getting new cluster states we update good nodes. If we have more than this percentage of up nodes, we send to up nodes instead of totally random.
* (To avoid hitting trashing bad nodes still in slobrok)
*/
- public int getRequiredUpPercentageToSendToKnownGoodNodes() { return 60; }
+ int getRequiredUpPercentageToSendToKnownGoodNodes() { return 60; }
}
/** Helper class to get the bucket identifier of a message. */
public static class BucketIdCalculator {
private static final BucketIdFactory factory = new BucketIdFactory();
- @SuppressWarnings("deprecation")
private BucketId getBucketId(Message msg) {
switch (msg.getType()) {
case DocumentProtocol.MESSAGE_PUTDOCUMENT: return factory.getBucketId(((PutDocumentMessage)msg).getDocumentPut().getDocument().getId());
@@ -258,7 +263,7 @@ public class StoragePolicy extends ExternalSlobrokPolicy {
}
}
- public BucketId handleBucketIdCalculation(RoutingContext context) {
+ BucketId handleBucketIdCalculation(RoutingContext context) {
BucketId id = getBucketId(context.getMessage());
if (id == null || id.getRawId() == 0) {
Reply reply = new EmptyReply();
@@ -272,13 +277,13 @@ public class StoragePolicy extends ExternalSlobrokPolicy {
/** Class handling the logic of picking a distributor */
public static class DistributorSelectionLogic {
/** Class that tracks a failure of a given type per node. */
- public static class InstabilityChecker {
+ static class InstabilityChecker {
private List<Integer> nodeFailures = new ArrayList<>();
private int failureLimit;
- public InstabilityChecker(int failureLimit) { this.failureLimit = failureLimit; }
+ InstabilityChecker(int failureLimit) { this.failureLimit = failureLimit; }
- public boolean tooManyFailures(int nodeIndex) {
+ boolean tooManyFailures(int nodeIndex) {
if (nodeFailures.size() > nodeIndex && nodeFailures.get(nodeIndex) > failureLimit) {
nodeFailures.set(nodeIndex, 0);
return true;
@@ -287,7 +292,7 @@ public class StoragePolicy extends ExternalSlobrokPolicy {
}
}
- public void addFailure(Integer calculatedDistributor) {
+ void addFailure(Integer calculatedDistributor) {
while (nodeFailures.size() <= calculatedDistributor) nodeFailures.add(0);
nodeFailures.set(calculatedDistributor, nodeFailures.get(calculatedDistributor) + 1);
}
@@ -297,7 +302,7 @@ public class StoragePolicy extends ExternalSlobrokPolicy {
Integer calculatedDistributor;
ClusterState usedState;
- public MessageContext(ClusterState usedState) { this.usedState = usedState; }
+ MessageContext(ClusterState usedState) { this.usedState = usedState; }
public String toString() {
return "Context(Distributor " + calculatedDistributor +
@@ -312,7 +317,7 @@ public class StoragePolicy extends ExternalSlobrokPolicy {
private int oldClusterVersionGottenCount = 0;
private final int maxOldClusterVersionBeforeSendingRandom; // Reset cluster version protection
- public DistributorSelectionLogic(Parameters params, ExternalSlobrokPolicy policy) {
+ DistributorSelectionLogic(Parameters params, ExternalSlobrokPolicy policy) {
this.hostFetcher = params.createHostFetcher(policy);
this.hostFetcher.setRequiredUpPercentageToSendToKnownGoodNodes(params.getRequiredUpPercentageToSendToKnownGoodNodes());
this.distribution = params.createDistribution(policy);
@@ -325,7 +330,7 @@ public class StoragePolicy extends ExternalSlobrokPolicy {
distribution.close();
}
- public String getTargetSpec(RoutingContext context, BucketId bucketId) {
+ String getTargetSpec(RoutingContext context, BucketId bucketId) {
String sendRandomReason = null;
MessageContext messageContext = new MessageContext(cachedClusterState);
context.setContext(messageContext);
@@ -382,7 +387,7 @@ public class StoragePolicy extends ExternalSlobrokPolicy {
}
}
- public void handleWrongDistribution(WrongDistributionReply reply, RoutingContext routingContext) {
+ void handleWrongDistribution(WrongDistributionReply reply, RoutingContext routingContext) {
final MessageContext context = (MessageContext) routingContext.getContext();
final Optional<ClusterState> replyState = clusterStateFromReply(reply);
if (!replyState.isPresent()) {
@@ -479,7 +484,7 @@ public class StoragePolicy extends ExternalSlobrokPolicy {
}
}
- public void handleErrorReply(Reply reply, Object untypedContext) {
+ void handleErrorReply(Reply reply, Object untypedContext) {
MessageContext messageContext = (MessageContext) untypedContext;
if (messageContext.calculatedDistributor != null) {
persistentFailureChecker.addFailure(messageContext.calculatedDistributor);
@@ -562,9 +567,4 @@ public class StoragePolicy extends ExternalSlobrokPolicy {
public void destroy() {
distributorSelectionLogic.destroy();
}
-
- @Override
- public MetricSet getMetrics() {
- return null;
- }
}
diff --git a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/SubsetServicePolicy.java b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/SubsetServicePolicy.java
index d6499c196f4..31802f2872f 100755
--- a/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/SubsetServicePolicy.java
+++ b/documentapi/src/main/java/com/yahoo/documentapi/messagebus/protocol/SubsetServicePolicy.java
@@ -3,8 +3,10 @@ package com.yahoo.documentapi.messagebus.protocol;
import com.yahoo.jrt.slobrok.api.Mirror;
import com.yahoo.log.LogLevel;
-import com.yahoo.messagebus.metrics.MetricSet;
-import com.yahoo.messagebus.routing.*;
+import com.yahoo.messagebus.routing.Hop;
+import com.yahoo.messagebus.routing.Route;
+import com.yahoo.messagebus.routing.RoutingContext;
+import com.yahoo.messagebus.routing.VerbatimDirective;
import java.util.ArrayList;
import java.util.HashMap;
@@ -21,7 +23,7 @@ public class SubsetServicePolicy implements DocumentProtocolRoutingPolicy {
private static Logger log = Logger.getLogger(SubsetServicePolicy.class.getName());
private final int subsetSize;
- private final Map<String, CacheEntry> cache = new HashMap<String, CacheEntry>();
+ private final Map<String, CacheEntry> cache = new HashMap<>();
/**
* Creates an instance of a subset service policy. The parameter string is parsed as an integer number that is the
@@ -29,7 +31,7 @@ public class SubsetServicePolicy implements DocumentProtocolRoutingPolicy {
*
* @param param The number of services to include in the set.
*/
- public SubsetServicePolicy(String param) {
+ SubsetServicePolicy(String param) {
int subsetSize = 5;
if (param != null && param.length() > 0) {
try {
@@ -131,15 +133,11 @@ public class SubsetServicePolicy implements DocumentProtocolRoutingPolicy {
* Defines the necessary cache data.
*/
private class CacheEntry {
- private final List<Hop> recipients = new ArrayList<Hop>();
+ private final List<Hop> recipients = new ArrayList<>();
private int generation = 0;
private int offset = 0;
}
public void destroy() {
}
-
- public MetricSet getMetrics() {
- return null;
- }
}
diff --git a/documentapi/src/main/java/com/yahoo/documentapi/metrics/DocumentProtocolMetricSet.java b/documentapi/src/main/java/com/yahoo/documentapi/metrics/DocumentProtocolMetricSet.java
deleted file mode 100644
index f0f5a8d008b..00000000000
--- a/documentapi/src/main/java/com/yahoo/documentapi/metrics/DocumentProtocolMetricSet.java
+++ /dev/null
@@ -1,20 +0,0 @@
-// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package com.yahoo.documentapi.metrics;
-
-import com.yahoo.messagebus.metrics.MetricSet;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * @author thomasg
- */
-public class DocumentProtocolMetricSet extends MetricSet {
- public MetricSet routingPolicyMetrics = new MetricSet("routingpolicies");
-
- public DocumentProtocolMetricSet() {
- super("document");
- addMetric(routingPolicyMetrics);
- }
-
-}
diff --git a/documentapi/src/test/java/com/yahoo/documentapi/messagebus/protocol/RoutingPolicyRepositoryTest.java b/documentapi/src/test/java/com/yahoo/documentapi/messagebus/protocol/RoutingPolicyRepositoryTest.java
index 060f8010948..c86a591de60 100644
--- a/documentapi/src/test/java/com/yahoo/documentapi/messagebus/protocol/RoutingPolicyRepositoryTest.java
+++ b/documentapi/src/test/java/com/yahoo/documentapi/messagebus/protocol/RoutingPolicyRepositoryTest.java
@@ -1,7 +1,6 @@
// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
package com.yahoo.documentapi.messagebus.protocol;
-import com.yahoo.documentapi.metrics.DocumentProtocolMetricSet;
import org.junit.Rule;
import org.junit.Test;
import org.junit.rules.ExpectedException;
@@ -17,8 +16,7 @@ public class RoutingPolicyRepositoryTest {
@Test
public void policy_creation_does_not_swallow_exception() {
- final DocumentProtocolMetricSet metrics = new DocumentProtocolMetricSet();
- final RoutingPolicyRepository repo = new RoutingPolicyRepository(metrics);
+ final RoutingPolicyRepository repo = new RoutingPolicyRepository();
final RoutingPolicyFactory factory = mock(RoutingPolicyFactory.class);
when(factory.createPolicy(anyString())).thenThrow(new IllegalArgumentException("oh no!"));
diff --git a/documentapi/src/test/java/com/yahoo/documentapi/messagebus/protocol/test/LoadBalancerTestCase.java b/documentapi/src/test/java/com/yahoo/documentapi/messagebus/protocol/test/LoadBalancerTestCase.java
index 284e338394f..698b778c312 100644
--- a/documentapi/src/test/java/com/yahoo/documentapi/messagebus/protocol/test/LoadBalancerTestCase.java
+++ b/documentapi/src/test/java/com/yahoo/documentapi/messagebus/protocol/test/LoadBalancerTestCase.java
@@ -3,12 +3,9 @@ package com.yahoo.documentapi.messagebus.protocol.test;
import com.yahoo.documentapi.messagebus.protocol.LoadBalancer;
import com.yahoo.jrt.slobrok.api.Mirror;
-import com.yahoo.text.XMLWriter;
import org.junit.Test;
-import java.io.PrintWriter;
import java.util.List;
-import java.util.concurrent.atomic.AtomicLong;
import static org.junit.Assert.assertEquals;
import static org.junit.Assert.fail;
@@ -33,8 +30,7 @@ public class LoadBalancerTestCase {
}
private static void assertIllegalArgument(String clusterName, String recipient, String expectedMessage) {
- LoadBalancer.Metrics metric = new LoadBalancer.Metrics("");
- LoadBalancer policy = new LoadBalancer(clusterName, "", metric);
+ LoadBalancer policy = new LoadBalancer(clusterName);
try {
fail("Expected exception, got index " + policy.getIndex(recipient) + ".");
} catch (IllegalArgumentException e) {
@@ -44,8 +40,7 @@ public class LoadBalancerTestCase {
@Test
public void testLoadBalancer() {
- LoadBalancer.Metrics m = new LoadBalancer.Metrics("");
- LoadBalancer lb = new LoadBalancer("foo", "", m);
+ LoadBalancer lb = new LoadBalancer("foo");
Mirror.Entry[] entries = new Mirror.Entry[]{ new Mirror.Entry("foo/0/default", "tcp/bar:1"),
new Mirror.Entry("foo/1/default", "tcp/bar:2"),
@@ -58,13 +53,13 @@ public class LoadBalancerTestCase {
assertEquals("foo/" + (i % 3) + "/default" , node.entry.getName());
}
- assertEquals(33, weights.get(0).sent.get().intValue());
- assertEquals(33, weights.get(1).sent.get().intValue());
- assertEquals(33, weights.get(2).sent.get().intValue());
+ assertEquals(33, weights.get(0).sent.intValue());
+ assertEquals(33, weights.get(1).sent.intValue());
+ assertEquals(33, weights.get(2).sent.intValue());
- weights.get(0).sent.set(new AtomicLong(0));
- weights.get(1).sent.set(new AtomicLong(0));
- weights.get(2).sent.set(new AtomicLong(0));
+ weights.get(0).sent.set(0);
+ weights.get(1).sent.set(0);
+ weights.get(2).sent.set(0);
}
{
@@ -83,13 +78,9 @@ public class LoadBalancerTestCase {
lb.received(new LoadBalancer.Node(new Mirror.Entry("foo/1/default", "tcp/bar:2"), weights.get(1)), false);
}
- PrintWriter writer = new PrintWriter(System.out);
- m.toXML(new XMLWriter(writer));
- writer.flush();
-
- assertEquals(421, (int)(100 * weights.get(0).weight.get() / weights.get(1).weight.get()));
- assertEquals(100, (int)(100 * weights.get(1).weight.get()));
- assertEquals(421, (int)(100 * weights.get(2).weight.get() / weights.get(1).weight.get()));
+ assertEquals(421, (int)(100 * weights.get(0).weight / weights.get(1).weight));
+ assertEquals(100, (int)(100 * weights.get(1).weight));
+ assertEquals(421, (int)(100 * weights.get(2).weight / weights.get(1).weight));
}
@@ -107,8 +98,7 @@ public class LoadBalancerTestCase {
@Test
public void testLoadBalancerOneItemOnly() {
- LoadBalancer.Metrics m = new LoadBalancer.Metrics("");
- LoadBalancer lb = new LoadBalancer("foo", "", m);
+ LoadBalancer lb = new LoadBalancer("foo");
Mirror.Entry[] entries = new Mirror.Entry[]{ new Mirror.Entry("foo/0/default", "tcp/bar:1") };
List<LoadBalancer.NodeMetrics> weights = lb.getNodeWeights();
@@ -120,5 +110,4 @@ public class LoadBalancerTestCase {
assertEquals("foo/0/default" , lb.getRecipient(entries).entry.getName());
}
-
}
diff --git a/documentapi/src/test/java/com/yahoo/documentapi/messagebus/protocol/test/PolicyFactoryTestCase.java b/documentapi/src/test/java/com/yahoo/documentapi/messagebus/protocol/test/PolicyFactoryTestCase.java
index 8f2fee880e6..1f8a783d417 100755
--- a/documentapi/src/test/java/com/yahoo/documentapi/messagebus/protocol/test/PolicyFactoryTestCase.java
+++ b/documentapi/src/test/java/com/yahoo/documentapi/messagebus/protocol/test/PolicyFactoryTestCase.java
@@ -9,8 +9,13 @@ import com.yahoo.documentapi.messagebus.protocol.RemoveDocumentMessage;
import com.yahoo.documentapi.messagebus.protocol.RoutingPolicyFactory;
import com.yahoo.jrt.ListenFailedException;
import com.yahoo.jrt.slobrok.server.Slobrok;
-import com.yahoo.messagebus.*;
-import com.yahoo.messagebus.metrics.MetricSet;
+import com.yahoo.messagebus.ErrorCode;
+import com.yahoo.messagebus.Message;
+import com.yahoo.messagebus.MessageBusParams;
+import com.yahoo.messagebus.Protocol;
+import com.yahoo.messagebus.Reply;
+import com.yahoo.messagebus.SourceSession;
+import com.yahoo.messagebus.SourceSessionParams;
import com.yahoo.messagebus.network.rpc.RPCNetworkParams;
import com.yahoo.messagebus.network.rpc.test.TestServer;
import com.yahoo.messagebus.routing.Route;
@@ -104,10 +109,6 @@ public class PolicyFactoryTestCase {
public void destroy() {
}
-
- public MetricSet getMetrics() {
- return null;
- }
}
}
diff --git a/documentapi/src/test/java/com/yahoo/documentapi/messagebus/protocol/test/storagepolicy/Simulator.java b/documentapi/src/test/java/com/yahoo/documentapi/messagebus/protocol/test/storagepolicy/Simulator.java
index 10183471ffd..f0e31295d3f 100644
--- a/documentapi/src/test/java/com/yahoo/documentapi/messagebus/protocol/test/storagepolicy/Simulator.java
+++ b/documentapi/src/test/java/com/yahoo/documentapi/messagebus/protocol/test/storagepolicy/Simulator.java
@@ -8,7 +8,11 @@ import com.yahoo.documentapi.messagebus.protocol.DocumentProtocol;
import com.yahoo.documentapi.messagebus.protocol.StoragePolicy;
import com.yahoo.messagebus.routing.RoutingNode;
import com.yahoo.vdslib.distribution.RandomGen;
-import com.yahoo.vdslib.state.*;
+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 java.util.Map;
import java.util.TreeMap;
diff --git a/messagebus/abi-spec.json b/messagebus/abi-spec.json
index 54c5c782cb5..baf2046e322 100644
--- a/messagebus/abi-spec.json
+++ b/messagebus/abi-spec.json
@@ -611,8 +611,7 @@
"public abstract java.lang.String getName()",
"public abstract byte[] encode(com.yahoo.component.Version, com.yahoo.messagebus.Routable)",
"public abstract com.yahoo.messagebus.Routable decode(com.yahoo.component.Version, byte[])",
- "public abstract com.yahoo.messagebus.routing.RoutingPolicy createPolicy(java.lang.String, java.lang.String)",
- "public abstract com.yahoo.messagebus.metrics.MetricSet getMetrics()"
+ "public abstract com.yahoo.messagebus.routing.RoutingPolicy createPolicy(java.lang.String, java.lang.String)"
],
"fields": []
},
diff --git a/messagebus/src/main/java/com/yahoo/messagebus/Protocol.java b/messagebus/src/main/java/com/yahoo/messagebus/Protocol.java
index 11b135cac62..3801308d38f 100644
--- a/messagebus/src/main/java/com/yahoo/messagebus/Protocol.java
+++ b/messagebus/src/main/java/com/yahoo/messagebus/Protocol.java
@@ -2,7 +2,6 @@
package com.yahoo.messagebus;
import com.yahoo.component.Version;
-import com.yahoo.messagebus.metrics.MetricSet;
import com.yahoo.messagebus.routing.RoutingPolicy;
/**
@@ -46,9 +45,4 @@ public interface Protocol {
* @return The created policy.
*/
public RoutingPolicy createPolicy(String name, String param);
-
- /**
- * Returns the metrics associated with this protocol.
- */
- MetricSet getMetrics();
}
diff --git a/messagebus/src/main/java/com/yahoo/messagebus/metrics/CountMetric.java b/messagebus/src/main/java/com/yahoo/messagebus/metrics/CountMetric.java
deleted file mode 100644
index e403a528c98..00000000000
--- a/messagebus/src/main/java/com/yahoo/messagebus/metrics/CountMetric.java
+++ /dev/null
@@ -1,18 +0,0 @@
-// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package com.yahoo.messagebus.metrics;
-
-import java.util.concurrent.atomic.AtomicLong;
-
-/**
- * @author thomasg
- */
-public class CountMetric extends NumberMetric<AtomicLong> {
- public CountMetric(String name, MetricSet owner) {
- super(name, new AtomicLong(0), owner);
- }
-
- public void inc(long increment) {
- get().addAndGet(increment);
- }
-
-}
diff --git a/messagebus/src/main/java/com/yahoo/messagebus/metrics/Metric.java b/messagebus/src/main/java/com/yahoo/messagebus/metrics/Metric.java
deleted file mode 100644
index 004f48e43f0..00000000000
--- a/messagebus/src/main/java/com/yahoo/messagebus/metrics/Metric.java
+++ /dev/null
@@ -1,48 +0,0 @@
-// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package com.yahoo.messagebus.metrics;
-
-import com.yahoo.text.XMLWriter;
-import com.yahoo.text.Utf8String;
-
-import java.io.Writer;
-
-/**
- * @author thomasg
- */
-public abstract class Metric {
- String name;
- String xmlTagName = null;
-
- public Metric(String name) {
- this.name = name;
- }
-
- public String getName() {
- return name;
- }
-
- public String toHTML() {
- return toString();
- }
-
- public String getXmlTagName() {
- return xmlTagName;
- }
-
- public void setXmlTagName(String newName) {
- xmlTagName = newName;
- }
-
- static private final Utf8String attrName = new Utf8String("name");
-
- public void renderXmlName(XMLWriter writer) {
- if (xmlTagName != null) {
- writer.openTag(xmlTagName);
- writer.attribute(attrName, name);
- } else {
- writer.openTag(name);
- }
- }
-
- public abstract void toXML(XMLWriter writer);
-}
diff --git a/messagebus/src/main/java/com/yahoo/messagebus/metrics/MetricSet.java b/messagebus/src/main/java/com/yahoo/messagebus/metrics/MetricSet.java
deleted file mode 100644
index 44264246b3a..00000000000
--- a/messagebus/src/main/java/com/yahoo/messagebus/metrics/MetricSet.java
+++ /dev/null
@@ -1,47 +0,0 @@
-// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package com.yahoo.messagebus.metrics;
-
-import com.yahoo.text.XMLWriter;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-/**
- * @author thomasg
- */
-public class MetricSet extends Metric {
- private List<Metric> metrics = new ArrayList<Metric>();
-
- public MetricSet(String name) {
- super(name);
- }
-
- public void addMetric(Metric m) {
- metrics.add(m);
- }
-
- public List<Metric> getMetrics() {
- return Collections.unmodifiableList(metrics);
- }
-
- public String toHTML() {
- StringBuilder builder = new StringBuilder();
- builder.append("<ul>\n");
- for (Metric m : metrics) {
- builder.append("<li>\n").append(m.toHTML()).append("\n</li>");
- }
- builder.append("\n</ul>\n");
- return builder.toString();
- }
-
- public void toXML(XMLWriter xmlWriter) {
- renderXmlName(xmlWriter);
-
- for (Metric m : metrics) {
- m.toXML(xmlWriter);
- }
-
- xmlWriter.closeTag();
- }
-}
diff --git a/messagebus/src/main/java/com/yahoo/messagebus/metrics/NumberMetric.java b/messagebus/src/main/java/com/yahoo/messagebus/metrics/NumberMetric.java
deleted file mode 100644
index 5caf300cbb0..00000000000
--- a/messagebus/src/main/java/com/yahoo/messagebus/metrics/NumberMetric.java
+++ /dev/null
@@ -1,40 +0,0 @@
-// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package com.yahoo.messagebus.metrics;
-
-import com.yahoo.text.XMLWriter;
-import com.yahoo.text.Utf8String;
-
-/**
- * @author thomasg
- */
-public abstract class NumberMetric<V extends Number> extends Metric {
- private V value;
-
- public NumberMetric(String name, V v, MetricSet owner) {
- super(name);
- value = v;
- owner.addMetric(this);
- }
-
- public V get() {
- return value;
- }
-
- public void set(V value) {
- this.value = value;
- }
-
- public String toString() {
- return value.toString();
- }
-
- static private final Utf8String attrValue = new Utf8String("value");
-
- public void toXML(XMLWriter writer) {
- renderXmlName(writer);
- writer.attribute(attrValue, value);
- writer.closeTag();
- }
-
-
-}
diff --git a/messagebus/src/main/java/com/yahoo/messagebus/metrics/ValueMetric.java b/messagebus/src/main/java/com/yahoo/messagebus/metrics/ValueMetric.java
deleted file mode 100644
index 8905a3eadd3..00000000000
--- a/messagebus/src/main/java/com/yahoo/messagebus/metrics/ValueMetric.java
+++ /dev/null
@@ -1,14 +0,0 @@
-// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-package com.yahoo.messagebus.metrics;
-
-import java.io.Writer;
-
-/**
- * @author thomasg
- */
-public class ValueMetric<V extends Number> extends NumberMetric<V> {
-
- public ValueMetric(String name, V v, MetricSet owner) {
- super(name, v, owner);
- }
-}
diff --git a/messagebus/src/main/java/com/yahoo/messagebus/metrics/package-info.java b/messagebus/src/main/java/com/yahoo/messagebus/metrics/package-info.java
deleted file mode 100644
index 9c425f0a0df..00000000000
--- a/messagebus/src/main/java/com/yahoo/messagebus/metrics/package-info.java
+++ /dev/null
@@ -1,5 +0,0 @@
-// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root.
-@ExportPackage
-package com.yahoo.messagebus.metrics;
-
-import com.yahoo.osgi.annotation.ExportPackage;
diff --git a/messagebus/src/main/java/com/yahoo/messagebus/test/SimpleProtocol.java b/messagebus/src/main/java/com/yahoo/messagebus/test/SimpleProtocol.java
index c4673685767..fc8ccd988c5 100644
--- a/messagebus/src/main/java/com/yahoo/messagebus/test/SimpleProtocol.java
+++ b/messagebus/src/main/java/com/yahoo/messagebus/test/SimpleProtocol.java
@@ -2,20 +2,13 @@
package com.yahoo.messagebus.test;
import com.yahoo.component.Version;
-import com.yahoo.messagebus.EmptyReply;
import com.yahoo.messagebus.Protocol;
-import com.yahoo.messagebus.Reply;
import com.yahoo.messagebus.Routable;
-import com.yahoo.messagebus.metrics.MetricSet;
-import com.yahoo.messagebus.routing.Route;
-import com.yahoo.messagebus.routing.RoutingContext;
-import com.yahoo.messagebus.routing.RoutingNodeIterator;
import com.yahoo.messagebus.routing.RoutingPolicy;
import com.yahoo.text.Utf8;
import com.yahoo.text.Utf8String;
import java.util.HashMap;
-import java.util.List;
import java.util.Map;
/**
@@ -68,11 +61,6 @@ public class SimpleProtocol implements Protocol {
}
}
- @Override
- public MetricSet getMetrics() {
- return null;
- }
-
/**
* Registers a policy factory with this protocol under a given name. Whenever a policy is requested that matches
* this name, the factory is invoked.
diff --git a/messagebus/src/test/java/com/yahoo/messagebus/network/rpc/RPCNetworkTestCase.java b/messagebus/src/test/java/com/yahoo/messagebus/network/rpc/RPCNetworkTestCase.java
index 01e0fbf34b6..bc109a6074f 100644
--- a/messagebus/src/test/java/com/yahoo/messagebus/network/rpc/RPCNetworkTestCase.java
+++ b/messagebus/src/test/java/com/yahoo/messagebus/network/rpc/RPCNetworkTestCase.java
@@ -3,8 +3,15 @@ package com.yahoo.messagebus.network.rpc;
import com.yahoo.component.Version;
import com.yahoo.jrt.slobrok.server.Slobrok;
-import com.yahoo.messagebus.*;
-import com.yahoo.messagebus.metrics.MetricSet;
+import com.yahoo.messagebus.DestinationSession;
+import com.yahoo.messagebus.DestinationSessionParams;
+import com.yahoo.messagebus.Message;
+import com.yahoo.messagebus.MessageBusParams;
+import com.yahoo.messagebus.Protocol;
+import com.yahoo.messagebus.Reply;
+import com.yahoo.messagebus.Routable;
+import com.yahoo.messagebus.SourceSession;
+import com.yahoo.messagebus.SourceSessionParams;
import com.yahoo.messagebus.network.rpc.test.TestServer;
import com.yahoo.messagebus.routing.Route;
import com.yahoo.messagebus.routing.RoutingPolicy;
@@ -88,11 +95,6 @@ public class RPCNetworkTestCase {
return null;
}
- @Override
- public MetricSet getMetrics() {
- return null;
- }
-
static MyProtocol newEncodeException(RuntimeException e) {
return new MyProtocol(e);
}
diff --git a/messagebus/src/test/java/com/yahoo/messagebus/test/SimpleProtocolTestCase.java b/messagebus/src/test/java/com/yahoo/messagebus/test/SimpleProtocolTestCase.java
index 898d5a36431..c6b3b09f2ed 100644
--- a/messagebus/src/test/java/com/yahoo/messagebus/test/SimpleProtocolTestCase.java
+++ b/messagebus/src/test/java/com/yahoo/messagebus/test/SimpleProtocolTestCase.java
@@ -6,7 +6,9 @@ import com.yahoo.messagebus.EmptyReply;
import com.yahoo.messagebus.Routable;
import org.junit.Test;
-import static org.junit.Assert.*;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertNotNull;
+import static org.junit.Assert.assertNull;
/**
* @author Simon Thoresen Hult
@@ -21,10 +23,6 @@ public class SimpleProtocolTestCase {
assertEquals(SimpleProtocol.NAME, PROTOCOL.getName());
}
- @Test
- public void requireThatMetricSetIsNull() {
- assertNull(PROTOCOL.getMetrics());
- }
@Test
public void requireThatMessageCanBeEncodedAndDecoded() {