diff options
86 files changed, 369 insertions, 1873 deletions
diff --git a/.gitignore b/.gitignore index 0b2fba8c9ed..c77fe07eee7 100644 --- a/.gitignore +++ b/.gitignore @@ -34,12 +34,17 @@ CTestTestfile.cmake cmake_install.cmake Makefile Testing +/.mvn/ /.ninja_deps /.ninja_log /build.ninja /rules.ninja *_test_app /hadoop/dependency-reduced-pom.xml +/mvnw +/mvnw.cmd +/mvnwDebug +/mvnwDebug.cmd /vespa-hadoop/dependency-reduced-pom.xml .preprocessed/ .DS_Store diff --git a/config-model/src/main/java/com/yahoo/config/model/test/MockRoot.java b/config-model/src/main/java/com/yahoo/config/model/test/MockRoot.java index 6be829b6e49..b29ff1ee58b 100644 --- a/config-model/src/main/java/com/yahoo/config/model/test/MockRoot.java +++ b/config-model/src/main/java/com/yahoo/config/model/test/MockRoot.java @@ -66,7 +66,7 @@ public class MockRoot extends AbstractConfigProducerRoot { super(rootConfigId); hostSystem = new HostSystem(this, "hostsystem", deployState.getProvisioner(), deployState.getDeployLogger()); this.deployState = deployState; - fileReferencesRepository = new FileReferencesRepository(); + fileReferencesRepository = new FileReferencesRepository(deployState.getFileRegistry()); } public FileDistributionConfigProducer getFileDistributionConfigProducer() { diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/DistributableResource.java b/config-model/src/main/java/com/yahoo/searchdefinition/DistributableResource.java index 08194c578e7..245288c283e 100644 --- a/config-model/src/main/java/com/yahoo/searchdefinition/DistributableResource.java +++ b/config-model/src/main/java/com/yahoo/searchdefinition/DistributableResource.java @@ -4,65 +4,57 @@ package com.yahoo.searchdefinition; import com.yahoo.config.FileReference; import com.yahoo.config.application.api.FileRegistry; import com.yahoo.path.Path; -import com.yahoo.vespa.model.AbstractService; -import com.yahoo.vespa.model.utils.FileSender; import java.nio.ByteBuffer; -import java.util.Collection; import java.util.Objects; public class DistributableResource { - public enum PathType { FILE, URI, BLOB }; + public enum PathType { FILE, URI, BLOB } /** The search definition-unique name of this constant */ private final String name; - private final ByteBuffer blob; + //TODO Make path/pathType final + private PathType pathType; private String path; private FileReference fileReference = new FileReference(""); - private PathType pathType = PathType.FILE; public PathType getPathType() { return pathType; } public DistributableResource(String name) { - this.name = name; - blob = null; + this(name, null, PathType.FILE); } public DistributableResource(String name, String path) { + this(name, path, PathType.FILE); + } + public DistributableResource(String name, String path, PathType type) { this.name = name; this.path = path; - blob = null; + this.pathType = type; } public DistributableResource(String name, ByteBuffer blob) { - Objects.requireNonNull(name, "Blob name cannot be null"); - Objects.requireNonNull(blob, "Blob cannot be null"); this.name = name; - this.blob = blob; path = name + ".lz4"; pathType = PathType.BLOB; } + //TODO Remove and make path/pathType final public void setFileName(String fileName) { Objects.requireNonNull(fileName, "Filename cannot be null"); this.path = fileName; this.pathType = PathType.FILE; } + //TODO Remove and make path/pathType final public void setUri(String uri) { Objects.requireNonNull(uri, "uri cannot be null"); this.path = uri; this.pathType = PathType.URI; } - /** Initiate sending of this constant to some services over file distribution */ - public void sendTo(Collection<? extends AbstractService> services) { - FileSender.send(fileReference, services); - } - public String getName() { return name; } - public ByteBuffer getBlob() { return blob; } public String getFileName() { return path; } public Path getFilePath() { return Path.fromString(path); } public String getUri() { return path; } @@ -75,9 +67,6 @@ public class DistributableResource { if (path == null || path.isEmpty()) throw new IllegalArgumentException("Distributable URI/FILE resource must have a file or uri."); break; - case BLOB: - if (blob == null) - throw new IllegalArgumentException("Distributable BLOB can not be null."); } } @@ -89,14 +78,15 @@ public class DistributableResource { case URI: fileReference = fileRegistry.addUri(path); break; - case BLOB: - fileReference = fileRegistry.addBlob(path, blob); - break; default: throw new IllegalArgumentException("Unknown path type " + pathType); } } + protected void register(FileRegistry fileRegistry, ByteBuffer blob) { + fileReference = fileRegistry.addBlob(path, blob); + } + @Override public String toString() { return "resource '" + name + " of type '" + pathType + "' with ref '" + fileReference + "'"; diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/LargeRankExpressions.java b/config-model/src/main/java/com/yahoo/searchdefinition/LargeRankExpressions.java index c33400fdcc1..3fdea71da2c 100644 --- a/config-model/src/main/java/com/yahoo/searchdefinition/LargeRankExpressions.java +++ b/config-model/src/main/java/com/yahoo/searchdefinition/LargeRankExpressions.java @@ -2,9 +2,7 @@ package com.yahoo.searchdefinition; import com.yahoo.config.application.api.FileRegistry; -import com.yahoo.vespa.model.AbstractService; -import java.util.Collection; import java.util.Collections; import java.util.Map; import java.util.concurrent.ConcurrentHashMap; @@ -37,8 +35,4 @@ public class LargeRankExpressions { return Collections.unmodifiableMap(expressions); } - /** Initiate sending of these constants to some services over file distribution */ - public void sendTo(Collection<? extends AbstractService> services) { - expressions.values().forEach(constant -> constant.sendTo(services)); - } } diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/OnnxModels.java b/config-model/src/main/java/com/yahoo/searchdefinition/OnnxModels.java index e249fe59f14..c9c12100552 100644 --- a/config-model/src/main/java/com/yahoo/searchdefinition/OnnxModels.java +++ b/config-model/src/main/java/com/yahoo/searchdefinition/OnnxModels.java @@ -2,9 +2,7 @@ package com.yahoo.searchdefinition; import com.yahoo.config.application.api.FileRegistry; -import com.yahoo.vespa.model.AbstractService; -import java.util.Collection; import java.util.Collections; import java.util.HashMap; import java.util.Map; @@ -66,9 +64,4 @@ public class OnnxModels { return Collections.unmodifiableMap(allModels); } - /** Initiate sending of these models to some services over file distribution */ - public void sendTo(Collection<? extends AbstractService> services) { - asMap().values().forEach(model -> model.sendTo(services)); - } - } diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/RankExpressionBody.java b/config-model/src/main/java/com/yahoo/searchdefinition/RankExpressionBody.java index b3dec554cdc..815e4bbf359 100644 --- a/config-model/src/main/java/com/yahoo/searchdefinition/RankExpressionBody.java +++ b/config-model/src/main/java/com/yahoo/searchdefinition/RankExpressionBody.java @@ -1,11 +1,29 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.searchdefinition; +import com.yahoo.config.application.api.FileRegistry; + import java.nio.ByteBuffer; +import java.util.Objects; public class RankExpressionBody extends DistributableResource { - public RankExpressionBody(String name, ByteBuffer body) { - super(name, body); + private final ByteBuffer blob; + + public RankExpressionBody(String name, ByteBuffer blob) { + super(name, blob); + Objects.requireNonNull(blob, "Blob cannot be null"); + this.blob = blob; + } + public ByteBuffer getBlob() { return blob; } + public void validate() { + // Remove once pathType is final + if (getPathType() != PathType.BLOB) { + throw new IllegalArgumentException("PathType must be BLOB."); + } + } + + void register(FileRegistry fileRegistry) { + register(fileRegistry, blob); } } diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/RankProfile.java b/config-model/src/main/java/com/yahoo/searchdefinition/RankProfile.java index b5d86f5bb38..52fd5286bcf 100644 --- a/config-model/src/main/java/com/yahoo/searchdefinition/RankProfile.java +++ b/config-model/src/main/java/com/yahoo/searchdefinition/RankProfile.java @@ -98,6 +98,8 @@ public class RankProfile implements Cloneable { private String inheritedSummaryFeatures; private Set<ReferenceNode> matchFeatures; + private String inheritedMatchFeatures; + private Set<ReferenceNode> rankFeatures; /** The properties of this - a multimap */ @@ -519,8 +521,30 @@ public class RankProfile implements Cloneable { this.inheritedSummaryFeatures = parentProfile; } + /** + * Sets the name of a profile this should inherit the match features of. + * Without setting this, this will either have the match features of the parent, + * or if match features are set in this, only have the match features in this. + * With this set the resulting match features of this will be the superset of those defined in this and + * the final (with inheritance included) match features of the given parent. + * The profile must be the profile which is directly inherited by this. + * + */ + public void setInheritedMatchFeatures(String parentProfile) { + if ( ! parentProfile.equals(inheritedName)) + throw new IllegalArgumentException("This rank profile ("+name+") can only inherit the match features of its parent, '" + + inheritedName + ", but attemtping to inherit '" + parentProfile); + this.inheritedMatchFeatures = parentProfile; + } + /** Returns a read-only view of the match features to use in this profile. This is never null */ public Set<ReferenceNode> getMatchFeatures() { + if (inheritedMatchFeatures != null && matchFeatures != null) { + Set<ReferenceNode> combined = new HashSet<>(); + combined.addAll(getInherited().getMatchFeatures()); + combined.addAll(matchFeatures); + return Collections.unmodifiableSet(combined); + } if (matchFeatures != null) return Collections.unmodifiableSet(matchFeatures); if (getInherited() != null) return getInherited().getMatchFeatures(); return Set.of(); @@ -532,7 +556,7 @@ public class RankProfile implements Cloneable { matchFeatures.add(feature); } - /** Adds the content of the given feature list to the internal list of summary features. */ + /** Adds the content of the given feature list to the internal list of match features. */ public void addMatchFeatures(FeatureList features) { for (ReferenceNode feature : features) { addMatchFeature(feature); diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/RankingConstant.java b/config-model/src/main/java/com/yahoo/searchdefinition/RankingConstant.java index 7f29034157b..377e19eedf2 100644 --- a/config-model/src/main/java/com/yahoo/searchdefinition/RankingConstant.java +++ b/config-model/src/main/java/com/yahoo/searchdefinition/RankingConstant.java @@ -19,7 +19,10 @@ public class RankingConstant extends DistributableResource { } public RankingConstant(String name, TensorType type, String fileName) { - super(name, fileName); + this(name, type, fileName, PathType.FILE); + } + public RankingConstant(String name, TensorType type, String fileName, PathType pathType) { + super(name, fileName, pathType); this.tensorType = type; validate(); } diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/RankingConstants.java b/config-model/src/main/java/com/yahoo/searchdefinition/RankingConstants.java index 1e0eacaea16..5020e9a061c 100644 --- a/config-model/src/main/java/com/yahoo/searchdefinition/RankingConstants.java +++ b/config-model/src/main/java/com/yahoo/searchdefinition/RankingConstants.java @@ -2,9 +2,7 @@ package com.yahoo.searchdefinition; import com.yahoo.config.application.api.FileRegistry; -import com.yahoo.vespa.model.AbstractService; -import java.util.Collection; import java.util.Collections; import java.util.HashMap; import java.util.Map; @@ -77,8 +75,4 @@ public class RankingConstants { return Collections.unmodifiableMap(allConstants); } - /** Initiate sending of these constants to some services over file distribution */ - public void sendTo(Collection<? extends AbstractService> services) { - asMap().values().forEach(constant -> constant.sendTo(services)); - } } diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/Schema.java b/config-model/src/main/java/com/yahoo/searchdefinition/Schema.java index 36d4ba9699e..512d908ce5b 100644 --- a/config-model/src/main/java/com/yahoo/searchdefinition/Schema.java +++ b/config-model/src/main/java/com/yahoo/searchdefinition/Schema.java @@ -21,7 +21,6 @@ import com.yahoo.searchdefinition.document.TemporaryImportedFields; import com.yahoo.searchdefinition.document.annotation.SDAnnotationType; import com.yahoo.vespa.documentmodel.DocumentSummary; import com.yahoo.vespa.documentmodel.SummaryField; -import com.yahoo.vespa.model.AbstractService; import java.io.Reader; import java.util.ArrayList; @@ -219,12 +218,6 @@ public class Schema implements ImmutableSchema { @Override public OnnxModels onnxModels() { return onnxModels; } - public void sendTo(Collection<? extends AbstractService> services) { - rankingConstants.sendTo(services); - largeRankExpressions.sendTo(services); - onnxModels.sendTo(services); - } - public Optional<TemporaryImportedFields> temporaryImportedFields() { return temporaryImportedFields; } diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/RankProfileList.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/RankProfileList.java index faee6d67dbf..3081637c975 100644 --- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/RankProfileList.java +++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/RankProfileList.java @@ -16,10 +16,8 @@ import com.yahoo.searchdefinition.Schema; import com.yahoo.vespa.config.search.core.OnnxModelsConfig; import com.yahoo.vespa.config.search.core.RankingConstantsConfig; import com.yahoo.vespa.config.search.core.RankingExpressionsConfig; -import com.yahoo.vespa.model.AbstractService; import java.util.ArrayList; -import java.util.Collection; import java.util.LinkedHashMap; import java.util.List; import java.util.Map; @@ -144,12 +142,6 @@ public class RankProfileList extends Derived implements RankProfilesConfig.Produ return rankProfiles.get(name); } - public void sendTo(Collection<? extends AbstractService> services) { - rankingConstants.sendTo(services); - largeRankExpressions.sendTo(services); - onnxModels.sendTo(services); - } - @Override public String getDerivedName() { return "rank-profiles"; } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/AbstractService.java b/config-model/src/main/java/com/yahoo/vespa/model/AbstractService.java index fa510d15673..73b106ed393 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/AbstractService.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/AbstractService.java @@ -1,7 +1,6 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.vespa.model; -import com.yahoo.config.FileReference; import com.yahoo.config.application.api.DeployLogger; import com.yahoo.config.model.api.PortInfo; import com.yahoo.config.model.api.ServiceInfo; @@ -453,15 +452,6 @@ public abstract class AbstractService extends AbstractConfigProducer<AbstractCon return initialized; } - /** - * Add the given file to the application's file distributor. - * - * @param reference file reference (hash) - */ - public void send(FileReference reference) { - getRoot().fileReferencesRepository().add(reference); - } - /** The service HTTP port for health status */ public int getHealthPort() { return -1;} diff --git a/config-model/src/main/java/com/yahoo/vespa/model/ConfigProducerRoot.java b/config-model/src/main/java/com/yahoo/vespa/model/ConfigProducerRoot.java index 55bcadf4848..8c4b7fa23aa 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/ConfigProducerRoot.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/ConfigProducerRoot.java @@ -4,7 +4,6 @@ package com.yahoo.vespa.model; import com.yahoo.config.ConfigInstance; import com.yahoo.config.model.producer.AbstractConfigProducer; import com.yahoo.vespa.model.admin.Admin; -import com.yahoo.vespa.model.filedistribution.FileReferencesRepository; import java.util.Set; @@ -37,9 +36,7 @@ public interface ConfigProducerRoot extends ConfigProducer { * @param configId The config id * @return A config instance of the given type */ - public <CONFIGTYPE extends ConfigInstance> CONFIGTYPE getConfig(Class<CONFIGTYPE> clazz, String configId); - - FileReferencesRepository fileReferencesRepository(); + <CONFIGTYPE extends ConfigInstance> CONFIGTYPE getConfig(Class<CONFIGTYPE> clazz, String configId); Admin getAdmin(); diff --git a/config-model/src/main/java/com/yahoo/vespa/model/VespaModel.java b/config-model/src/main/java/com/yahoo/vespa/model/VespaModel.java index 362b3f3a75c..d6c66a635d4 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/VespaModel.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/VespaModel.java @@ -131,7 +131,7 @@ public final class VespaModel extends AbstractConfigProducerRoot implements Seri /** The validation overrides of this. This is never null. */ private final ValidationOverrides validationOverrides; - private final FileReferencesRepository fileReferencesRepository = new FileReferencesRepository(); + private final FileReferencesRepository fileReferencesRepository; private final Provisioned provisioned; @@ -171,6 +171,7 @@ public final class VespaModel extends AbstractConfigProducerRoot implements Seri throws IOException, SAXException { super("vespamodel"); version = deployState.getVespaVersion(); + fileReferencesRepository = new FileReferencesRepository(deployState.getFileRegistry()); rankingConstants = new RankingConstants(deployState.getFileRegistry(), Optional.empty()); validationOverrides = deployState.validationOverrides(); applicationPackage = deployState.getApplicationPackage(); @@ -384,9 +385,6 @@ public final class VespaModel extends AbstractConfigProducerRoot implements Seri .collect(Collectors.toCollection(LinkedHashSet::new)); } - @Override - public FileReferencesRepository fileReferencesRepository() { return fileReferencesRepository; } - public Set<FileReference> fileReferences() { return fileReferencesRepository.allFileReferences(); } /** Returns this models Vespa instance */ diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/ApplicationContainerCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/container/ApplicationContainerCluster.java index c9d41b7dc2d..c3897f49c44 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/ApplicationContainerCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/ApplicationContainerCluster.java @@ -114,15 +114,12 @@ public final class ApplicationContainerCluster extends ContainerCluster<Applicat @Override protected void doPrepare(DeployState deployState) { addAndSendApplicationBundles(deployState); - if (modelEvaluation != null) - modelEvaluation.prepare(containers); sendUserConfiguredFiles(deployState); } private void addAndSendApplicationBundles(DeployState deployState) { for (ComponentInfo component : deployState.getApplicationPackage().getComponentsInfo(deployState.getVespaVersion())) { FileReference reference = deployState.getFileRegistry().addFile(component.getPathRelativeToAppDir()); - FileSender.send(reference, containers); applicationBundles.add(reference); } } @@ -166,7 +163,7 @@ public final class ApplicationContainerCluster extends ContainerCluster<Applicat return servletGroup.getComponentMap(); } - public final void addServlet(Servlet servlet) { + public void addServlet(Servlet servlet) { servletGroup.addComponent(servlet.getGlobalComponentId(), servlet); } @@ -282,7 +279,7 @@ public final class ApplicationContainerCluster extends ContainerCluster<Applicat this.mbusParams = mbusParams; } - public final void setMessageBusEnabled(boolean messageBusEnabled) { this.messageBusEnabled = messageBusEnabled; } + public void setMessageBusEnabled(boolean messageBusEnabled) { this.messageBusEnabled = messageBusEnabled; } protected boolean messageBusEnabled() { return messageBusEnabled; } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerModelEvaluation.java b/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerModelEvaluation.java index b7d3a726aff..40df899c94d 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerModelEvaluation.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/ContainerModelEvaluation.java @@ -12,7 +12,6 @@ import com.yahoo.vespa.model.container.component.Handler; import com.yahoo.vespa.model.container.component.SystemBindingPattern; import java.nio.file.Path; -import java.util.List; import java.util.Objects; /** @@ -45,10 +44,6 @@ public class ContainerModelEvaluation implements cluster.addComponent(ContainerModelEvaluation.getHandler()); } - public void prepare(List<ApplicationContainer> containers) { - rankProfileList.sendTo(containers); - } - @Override public void getConfig(RankProfilesConfig.Builder builder) { rankProfileList.getConfig(builder); diff --git a/config-model/src/main/java/com/yahoo/vespa/model/content/Content.java b/config-model/src/main/java/com/yahoo/vespa/model/content/Content.java index 75043041c0f..533364d80c3 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/content/Content.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/content/Content.java @@ -179,7 +179,6 @@ public class Content extends ConfigModel { s.setVespaMallocDebugStackTrace(cluster.getRootGroup().getVespaMallocDebugStackTrace().get()); } } - cluster.prepare(); } private void setCpuSocketAffinity() { diff --git a/config-model/src/main/java/com/yahoo/vespa/model/content/ContentSearchCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/content/ContentSearchCluster.java index 917b1d42146..b8de1845834 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/content/ContentSearchCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/content/ContentSearchCluster.java @@ -74,10 +74,6 @@ public class ContentSearchCluster extends AbstractConfigProducer<SearchCluster> /** Whether the nodes of this cluster also hosts a container cluster in a hosted system */ private final boolean combined; - public void prepare() { - clusters.values().forEach(cluster -> cluster.prepareToDistributeFiles(getSearchNodes())); - } - public static class Builder extends VespaDomBuilder.DomConfigProducerBuilder<ContentSearchCluster> { private final Map<String, NewDocumentType> documentDefinitions; diff --git a/config-model/src/main/java/com/yahoo/vespa/model/content/cluster/ContentCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/content/cluster/ContentCluster.java index 1f65d239d18..0c0b2b80d79 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/content/cluster/ContentCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/content/cluster/ContentCluster.java @@ -408,10 +408,6 @@ public class ContentCluster extends AbstractConfigProducer<AbstractConfigProduce public ClusterSpec.Id id() { return ClusterSpec.Id.from(clusterId); } - public void prepare() { - search.prepare(); - } - public DistributionMode getDistributionMode() { if (distributionMode != null) return distributionMode; return getPersistence().getDefaultDistributionMode(); diff --git a/config-model/src/main/java/com/yahoo/vespa/model/filedistribution/FileReferencesRepository.java b/config-model/src/main/java/com/yahoo/vespa/model/filedistribution/FileReferencesRepository.java index b2c0538e77b..ac5c456a7b1 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/filedistribution/FileReferencesRepository.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/filedistribution/FileReferencesRepository.java @@ -2,9 +2,11 @@ package com.yahoo.vespa.model.filedistribution; import com.yahoo.config.FileReference; +import com.yahoo.config.application.api.FileRegistry; import java.util.LinkedHashSet; import java.util.Set; +import java.util.stream.Collectors; /** * Keeps track of what files to send with file distribution @@ -14,13 +16,13 @@ import java.util.Set; */ public class FileReferencesRepository { - /** A set of file references that should be distributed */ - private final Set<FileReference> fileReferences = new LinkedHashSet<>(); + private final FileRegistry fileRegistry; + public FileReferencesRepository(FileRegistry fileRegistry) { + this.fileRegistry = fileRegistry; + } - public FileReferencesRepository() { } - - public void add(FileReference reference) { fileReferences.add(reference); } - - public Set<FileReference> allFileReferences() { return Set.copyOf(fileReferences); } + public Set<FileReference> allFileReferences() { + return fileRegistry.export().stream().map(e -> e.reference).collect(Collectors.toUnmodifiableSet()); + } } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/search/AbstractSearchCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/search/AbstractSearchCluster.java index 82e8ecec543..19b1f39c87d 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/search/AbstractSearchCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/search/AbstractSearchCluster.java @@ -37,12 +37,6 @@ public abstract class AbstractSearchCluster extends AbstractConfigProducer<Abstr this.index = index; } - public void prepareToDistributeFiles(List<SearchNode> backends) { - for (SchemaSpec sds : localSDS) { - sds.getSearchDefinition().getSearch().sendTo(backends); - } - } - public void addDocumentNames(NamedSchema searchDefinition) { String dName = searchDefinition.getSearch().getDocument().getDocumentName().getName(); documentNames.add(dName); diff --git a/config-model/src/main/java/com/yahoo/vespa/model/utils/FileSender.java b/config-model/src/main/java/com/yahoo/vespa/model/utils/FileSender.java index f683db48e97..ad10e15930b 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/utils/FileSender.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/utils/FileSender.java @@ -36,25 +36,6 @@ public class FileSender implements Serializable { } /** - * Send the given file to all given services. - * - * @param fileReference The file reference to send. - * @param services The services to send the file to. - * @throws IllegalStateException if services is empty. - */ - public static void send(FileReference fileReference, Collection<? extends AbstractService> services) { - if (services.isEmpty()) { - throw new IllegalStateException("No service instances. Probably a standalone cluster setting up <nodes> " + - "using 'count' instead of <node> tags."); - } - - for (AbstractService service : services) { - // The same reference will be returned from each call. - service.send(fileReference); - } - } - - /** * Sends all user configured files for a producer to all given services. */ public <PRODUCER extends AbstractConfigProducer<?>> void sendUserConfiguredFiles(PRODUCER producer) { @@ -149,9 +130,7 @@ public class FileSender implements Serializable { String path = builder.getValue(); FileReference reference = sentFiles.get(path); if (reference == null) { - reference = fileRegistry.addFile(path); - send(reference, services); sentFiles.put(path, reference); } builder.setValue(reference.value()); diff --git a/config-model/src/main/javacc/SDParser.jj b/config-model/src/main/javacc/SDParser.jj index fe522494baf..07171dea803 100644 --- a/config-model/src/main/javacc/SDParser.jj +++ b/config-model/src/main/javacc/SDParser.jj @@ -29,6 +29,7 @@ import com.yahoo.documentmodel.*; import com.yahoo.compress.Compressor; import com.yahoo.compress.CompressionType; import com.yahoo.searchdefinition.Application; +import com.yahoo.searchdefinition.DistributableResource; import com.yahoo.searchdefinition.document.*; import com.yahoo.searchdefinition.document.annotation.SDAnnotationType; import com.yahoo.searchdefinition.document.annotation.TemporaryAnnotationReferenceDataType; @@ -357,6 +358,7 @@ TOKEN : | < MULTITHREADEDINDEXING: "multi-threaded-indexing" > | < MATCHFEATURES_SL: "match-features" (" ")* ":" (~["}","\n"])* ("\n")? > | < MATCHFEATURES_ML: "match-features" (<SEARCHLIB_SKIP>)? "{" (~["}"])* "}" > +| < MATCHFEATURES_ML_INHERITS: "match-features inherits " (<IDENTIFIER>) (<SEARCHLIB_SKIP>)? "{" (~["}"])* "}" > | < SUMMARYFEATURES_SL: "summary-features" (" ")* ":" (~["}","\n"])* ("\n")? > | < SUMMARYFEATURES_ML: "summary-features" (<SEARCHLIB_SKIP>)? "{" (~["}"])* "}" > | < SUMMARYFEATURES_ML_INHERITS: "summary-features inherits " (<IDENTIFIER>) (<SEARCHLIB_SKIP>)? "{" (~["}"])* "}" > @@ -1945,8 +1947,8 @@ Object onnxModelItem(OnnxModel onnxModel) : } { ( - (<FILE> <COLON> path = filePath() { } (<NL>)*) { onnxModel.setFileName(path); } | - (<URI> <COLON> path = uriPath() { } (<NL>)*) { onnxModel.setUri(path); } | + (path = fileItem()) { onnxModel.setFileName(path); } | + (path = uriItem()) { onnxModel.setUri(path); } | (<ONNX_INPUT_SL>) { String name = token.image.substring(5, token.image.lastIndexOf(":")).trim(); if (name.startsWith("\"")) { name = name.substring(1, name.length() - 1); } @@ -1973,56 +1975,42 @@ Object onnxModelItem(OnnxModel onnxModel) : void rankingConstant(Schema schema) : { String name; - RankingConstant constant; + String path = null; + DistributableResource.PathType pathType = DistributableResource.PathType.FILE; + TensorType type = null; } { - ( <CONSTANT> name = identifier() - { - constant = new RankingConstant(name); - } - lbrace() (rankingConstantItem(constant) (<NL>)*)+ <RBRACE> ) + ( <CONSTANT> name = identifier() lbrace() + (path = fileItem() { pathType = DistributableResource.PathType.FILE; } + | path = uriItem() { pathType = DistributableResource.PathType.URI; } + | type = tensorTypeWithPrefix(rankingConstantErrorMessage(name)) (<NL>)* + )+ + <RBRACE> + ) { if (documentsOnly) return; - schema.rankingConstants().add(constant); + schema.rankingConstants().add(new RankingConstant(name, type, path, pathType)); } } -/** - * This rule consumes a constant block. - * - * @param constant The constant to modify. - * @return Null. - */ -Object rankingConstantItem(RankingConstant constant) : +String fileItem() : { - String path = null; - TensorType type = null; + String path; } { - ( (<FILE> <COLON> path = filePath() { } (<NL>)*) { constant.setFileName(path); } - | (<URI> <COLON> path = uriPath() { } (<NL>)*) { constant.setUri(path); } - | type = tensorTypeWithPrefix(rankingConstantErrorMessage(constant.getName())) (<NL>)* { constant.setType(type); } - ) - { - return null; - } + (<FILE> <COLON> ( <FILE_PATH> | <STRING> | <IDENTIFIER>) { path = token.image; } { } (<NL>)*) { return path; } } - -String rankingConstantErrorMessage(String name) : {} +String uriItem() : { - { return "For ranking constant ' " + name + "'"; } + String path; } - -String filePath() : { } { - ( <FILE_PATH> | <STRING> | <IDENTIFIER>) - { return token.image; } + (<URI> <COLON> ( <URI_PATH> ) { path = token.image; } (<NL>)*) { return path; } } -String uriPath() : { } +String rankingConstantErrorMessage(String name) : {} { - ( <URI_PATH> ) - { return token.image; } + { return "For ranking constant ' " + name + "'"; } } /** @@ -2335,7 +2323,14 @@ Object matchFeatures(RankProfile profile) : { ( <MATCHFEATURES_SL> { features = token.image.substring(token.image.indexOf(":") + 1).trim(); } | <MATCHFEATURES_ML> { features = token.image.substring(token.image.indexOf("{") + 1, - token.image.lastIndexOf("}")).trim(); } ) + token.image.lastIndexOf("}")).trim(); } | + <MATCHFEATURES_ML_INHERITS> { + int inheritsIndex = token.image.indexOf("inherits "); + String rest = token.image.substring(inheritsIndex + "inherits ".length()); + profile.setInheritedMatchFeatures(rest.substring(0, rest.indexOf(" ")).trim()); + features = token.image.substring(token.image.indexOf("{") + 1, token.image.lastIndexOf("}")).trim(); + } + ) { profile.addMatchFeatures(getFeatureList(features)); return null; diff --git a/config-model/src/test/derived/rankprofileinheritance/child.sd b/config-model/src/test/derived/rankprofileinheritance/child.sd index 9369472cb23..a6e0787a659 100644 --- a/config-model/src/test/derived/rankprofileinheritance/child.sd +++ b/config-model/src/test/derived/rankprofileinheritance/child.sd @@ -20,6 +20,10 @@ schema child { attribute(field3) } + match-features inherits profile1 { + function3 + } + } rank-profile profile4 inherits profile2 { diff --git a/config-model/src/test/derived/rankprofileinheritance/parent1.sd b/config-model/src/test/derived/rankprofileinheritance/parent1.sd index d4375427e11..d25182fde4c 100644 --- a/config-model/src/test/derived/rankprofileinheritance/parent1.sd +++ b/config-model/src/test/derived/rankprofileinheritance/parent1.sd @@ -15,11 +15,18 @@ schema parent1 { expression: attribute(field1) + 5 } + function function1b() { + expression: attribute(field1) + 42 + } + summary-features { function1 attribute(field1) } + match-features { + function1b + } } } diff --git a/config-model/src/test/derived/rankprofileinheritance/rank-profiles.cfg b/config-model/src/test/derived/rankprofileinheritance/rank-profiles.cfg index 88788f5a93a..440b0ad2b97 100644 --- a/config-model/src/test/derived/rankprofileinheritance/rank-profiles.cfg +++ b/config-model/src/test/derived/rankprofileinheritance/rank-profiles.cfg @@ -11,12 +11,18 @@ rankprofile[].fef.property[].value "true" rankprofile[].name "profile3" rankprofile[].fef.property[].name "rankingExpression(function3).rankingScript" rankprofile[].fef.property[].value "attribute(field3) + 5" +rankprofile[].fef.property[].name "rankingExpression(function1b).rankingScript" +rankprofile[].fef.property[].value "attribute(field1) + 42" rankprofile[].fef.property[].name "rankingExpression(function1).rankingScript" rankprofile[].fef.property[].value "attribute(field1) + 5" rankprofile[].fef.property[].name "vespa.summary.feature" rankprofile[].fef.property[].value "attribute(field3)" rankprofile[].fef.property[].name "vespa.summary.feature" rankprofile[].fef.property[].value "rankingExpression(function3)" +rankprofile[].fef.property[].name "vespa.match.feature" +rankprofile[].fef.property[].value "rankingExpression(function3)" +rankprofile[].fef.property[].name "vespa.match.feature" +rankprofile[].fef.property[].value "rankingExpression(function1b)" rankprofile[].name "profile4" rankprofile[].fef.property[].name "rankingExpression(function2).rankingScript" rankprofile[].fef.property[].value "attribute(field2) + 5" diff --git a/config-model/src/test/java/com/yahoo/vespa/model/filedistribution/FileReferencesRepositoryTestCase.java b/config-model/src/test/java/com/yahoo/vespa/model/filedistribution/FileReferencesRepositoryTestCase.java index 740a6bc6354..dd98beea091 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/filedistribution/FileReferencesRepositoryTestCase.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/filedistribution/FileReferencesRepositoryTestCase.java @@ -6,6 +6,9 @@ import com.yahoo.config.application.api.FileRegistry; import com.yahoo.config.model.application.provider.MockFileRegistry; import org.junit.Test; +import java.util.Set; + +import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertNotNull; /** @@ -16,17 +19,14 @@ public class FileReferencesRepositoryTestCase { @Test public void fileDistributor() { FileRegistry fileRegistry = new MockFileRegistry(); - FileReferencesRepository fileReferencesRepository = new FileReferencesRepository(); + FileReferencesRepository fileReferencesRepository = new FileReferencesRepository(fileRegistry); String file1 = "component/path1"; String file2 = "component/path2"; FileReference ref1 = fileRegistry.addFile(file1); FileReference ref2 = fileRegistry.addFile(file2); - fileReferencesRepository.add(ref1); - fileReferencesRepository.add(ref2); - fileReferencesRepository.add(ref1); // same file reference as above - fileReferencesRepository.add(ref2); + assertEquals(Set.of(ref1, ref2), fileReferencesRepository.allFileReferences()); assertNotNull(ref1); assertNotNull(ref2); } diff --git a/configserver/pom.xml b/configserver/pom.xml index 5e97e9045a0..aadcac210cb 100644 --- a/configserver/pom.xml +++ b/configserver/pom.xml @@ -185,12 +185,6 @@ </dependency> <dependency> <groupId>com.yahoo.vespa</groupId> - <artifactId>statistics</artifactId> - <version>${project.version}</version> - <scope>provided</scope> - </dependency> - <dependency> - <groupId>com.yahoo.vespa</groupId> <artifactId>configdefinitions</artifactId> <version>${project.version}</version> <scope>provided</scope> diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/maintenance/ApplicationPackageMaintainer.java b/configserver/src/main/java/com/yahoo/vespa/config/server/maintenance/ApplicationPackageMaintainer.java index 7147743a086..2c0b7e090a6 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/maintenance/ApplicationPackageMaintainer.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/maintenance/ApplicationPackageMaintainer.java @@ -20,12 +20,6 @@ import com.yahoo.vespa.flags.FlagSource; import java.io.File; import java.time.Duration; -import java.util.ArrayList; -import java.util.List; -import java.util.concurrent.CompletableFuture; -import java.util.concurrent.ExecutionException; -import java.util.concurrent.atomic.AtomicInteger; -import java.util.logging.Level; import java.util.logging.Logger; import static com.yahoo.vespa.config.server.filedistribution.FileDistributionUtil.fileReferenceExistsOnDisk; @@ -62,10 +56,9 @@ public class ApplicationPackageMaintainer extends ConfigServerMaintainer { protected double maintain() { if (getOtherConfigServersInCluster(configserverConfig).isEmpty()) return 1.0; // Nothing to do - final AtomicInteger attempts = new AtomicInteger(0); - final AtomicInteger failures = new AtomicInteger(0); + int attempts = 0; + int failures = 0; - List<CompletableFuture<Void>> futures = new ArrayList<>(); try (var fileDownloader = createFileDownloader()) { for (var applicationId : applicationRepository.listApplications()) { log.fine(() -> "Verifying application package for " + applicationId); @@ -73,40 +66,28 @@ public class ApplicationPackageMaintainer extends ConfigServerMaintainer { if (session == null) continue; // App might be deleted after call to listApplications() FileReference applicationPackage = session.getApplicationPackageReference(); - if (applicationPackage == null) continue; - - if ( ! fileReferenceExistsOnDisk(downloadDirectory, applicationPackage)) { - long sessionId = session.getSessionId(); - log.fine(() -> "Downloading application package for " + applicationId + - " application package reference " + applicationPackage + - " (session " + sessionId + ")"); - - FileReferenceDownload download = new FileReferenceDownload(applicationPackage, - false, - this.getClass().getSimpleName()); - futures.add(CompletableFuture.supplyAsync(() -> fileDownloader.getFile(download)) - .thenAccept(file -> { - if (file.isPresent()) { - attempts.incrementAndGet(); - createLocalSessionIfMissing(applicationId, sessionId); - } else { - failures.incrementAndGet(); - log.warning("Failed to download application package for application " + - applicationId + " (session " + sessionId + ")"); - } - })); + long sessionId = session.getSessionId(); + log.fine(() -> "Verifying application package file reference " + applicationPackage + " for session " + sessionId); + + if (applicationPackage != null) { + attempts++; + if (! fileReferenceExistsOnDisk(downloadDirectory, applicationPackage)) { + log.fine(() -> "Downloading missing application package for application " + applicationId + " (session " + sessionId + ")"); + + FileReferenceDownload download = new FileReferenceDownload(applicationPackage, + false, + this.getClass().getSimpleName()); + if (fileDownloader.getFile(download).isEmpty()) { + failures++; + log.warning("Failed to download application package for application " + applicationId + " (session " + sessionId + ")"); + continue; + } + } + createLocalSessionIfMissing(applicationId, sessionId); } } } - log.fine(() -> "Attempts: " + attempts.get() + ", failures: " + failures.get()); - futures.forEach(future -> { - try { - future.get(); - } catch (InterruptedException | ExecutionException e) { - log.log(Level.WARNING, "Failed to get future", e); - } - }); - return asSuccessFactor(attempts.get(), failures.get()); + return asSuccessFactor(attempts, failures); } private FileDownloader createFileDownloader() { diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/monitoring/Metrics.java b/configserver/src/main/java/com/yahoo/vespa/config/server/monitoring/Metrics.java index b8c5009028f..dc9e727c9e1 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/monitoring/Metrics.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/monitoring/Metrics.java @@ -15,8 +15,6 @@ import java.util.LinkedHashMap; import java.util.Map; import java.util.Optional; import java.util.logging.Level; -import com.yahoo.statistics.Statistics; -import com.yahoo.statistics.Counter; import java.util.concurrent.ConcurrentHashMap; import java.util.concurrent.ExecutorService; @@ -25,7 +23,7 @@ import java.util.concurrent.ScheduledThreadPoolExecutor; import java.util.concurrent.TimeUnit; /** - * Metrics for config server. The statistics framework takes care of logging. + * Metrics for config server. * * @author Harald Musum */ @@ -37,9 +35,6 @@ public class Metrics extends AbstractComponent implements MetricUpdaterFactory, private static final String METRIC_FREE_MEMORY = getMetricName("freeMemory"); private static final String METRIC_LATENCY = getMetricName("latency"); - private final Counter requests; - private final Counter failedRequests; - private final Counter procTimeCounter; private final Metric metric; private final Optional<ZKMetricUpdater> zkMetricUpdater; @@ -48,16 +43,13 @@ public class Metrics extends AbstractComponent implements MetricUpdaterFactory, private final Optional<ScheduledExecutorService> executorService; @Inject - public Metrics(Metric metric, Statistics statistics, HealthMonitorConfig healthMonitorConfig, ZookeeperServerConfig zkServerConfig) { - this(metric, statistics, healthMonitorConfig, zkServerConfig, true); + public Metrics(Metric metric, HealthMonitorConfig healthMonitorConfig, ZookeeperServerConfig zkServerConfig) { + this(metric, healthMonitorConfig, zkServerConfig, true); } - private Metrics(Metric metric, Statistics statistics, HealthMonitorConfig healthMonitorConfig, + private Metrics(Metric metric, HealthMonitorConfig healthMonitorConfig, ZookeeperServerConfig zkServerConfig, boolean createZkMetricUpdater) { this.metric = metric; - requests = createCounter(METRIC_REQUESTS, statistics); - failedRequests = createCounter(METRIC_FAILED_REQUESTS, statistics); - procTimeCounter = createCounter("procTime", statistics); if (createZkMetricUpdater) { log.log(Level.FINE, () -> "Metric update interval is " + healthMonitorConfig.snapshot_interval() + " seconds"); @@ -73,29 +65,21 @@ public class Metrics extends AbstractComponent implements MetricUpdaterFactory, public static Metrics createTestMetrics() { NullMetric metric = new NullMetric(); - Statistics.NullImplementation statistics = new Statistics.NullImplementation(); HealthMonitorConfig.Builder builder = new HealthMonitorConfig.Builder(); builder.snapshot_interval(60.0); ZookeeperServerConfig.Builder zkBuilder = new ZookeeperServerConfig.Builder().myid(1); - return new Metrics(metric, statistics, new HealthMonitorConfig(builder), new ZookeeperServerConfig(zkBuilder), false); - } - - private Counter createCounter(String name, Statistics statistics) { - return new Counter(name, statistics, false); + return new Metrics(metric, new HealthMonitorConfig(builder), new ZookeeperServerConfig(zkBuilder), false); } void incrementRequests(Metric.Context metricContext) { - requests.increment(1); metric.add(METRIC_REQUESTS, 1, metricContext); } void incrementFailedRequests(Metric.Context metricContext) { - failedRequests.increment(1); metric.add(METRIC_FAILED_REQUESTS, 1, metricContext); } void incrementProcTime(long increment, Metric.Context metricContext) { - procTimeCounter.increment(increment); metric.set(METRIC_LATENCY, increment, metricContext); } diff --git a/container-core/src/main/java/com/yahoo/container/core/config/HandlersConfigurerDi.java b/container-core/src/main/java/com/yahoo/container/core/config/HandlersConfigurerDi.java index 8095e07cc9e..173695c5299 100644 --- a/container-core/src/main/java/com/yahoo/container/core/config/HandlersConfigurerDi.java +++ b/container-core/src/main/java/com/yahoo/container/core/config/HandlersConfigurerDi.java @@ -113,6 +113,7 @@ public class HandlersConfigurerDi { isInitializing); } + @SuppressWarnings("deprecation") private Injector createFallbackInjector(com.yahoo.container.Container vespaContainer, Injector discInjector) { return discInjector.createChildInjector(new AbstractModule() { @Override diff --git a/container-search/abi-spec.json b/container-search/abi-spec.json index 9d3b4934aa3..183bb33b4f4 100644 --- a/container-search/abi-spec.json +++ b/container-search/abi-spec.json @@ -4322,6 +4322,7 @@ "public" ], "methods": [ + "public void <init>(com.yahoo.jdisc.Metric, com.yahoo.container.handler.threadpool.ContainerThreadPool, com.yahoo.search.query.profile.compiled.CompiledQueryProfileRegistry, com.yahoo.container.core.ContainerHttpConfig, com.yahoo.language.process.Embedder, com.yahoo.search.searchchain.ExecutionFactory)", "public void <init>(com.yahoo.statistics.Statistics, com.yahoo.jdisc.Metric, com.yahoo.container.handler.threadpool.ContainerThreadPool, com.yahoo.search.query.profile.compiled.CompiledQueryProfileRegistry, com.yahoo.container.core.ContainerHttpConfig, com.yahoo.language.process.Embedder, com.yahoo.search.searchchain.ExecutionFactory)", "public void <init>(com.yahoo.statistics.Statistics, com.yahoo.jdisc.Metric, com.yahoo.container.handler.threadpool.ContainerThreadPool, com.yahoo.container.logging.AccessLog, com.yahoo.search.query.profile.compiled.CompiledQueryProfileRegistry, com.yahoo.container.core.ContainerHttpConfig, com.yahoo.search.searchchain.ExecutionFactory)", "public void <init>(com.yahoo.statistics.Statistics, com.yahoo.jdisc.Metric, java.util.concurrent.Executor, com.yahoo.container.logging.AccessLog, com.yahoo.search.query.profile.compiled.CompiledQueryProfileRegistry, com.yahoo.container.core.ContainerHttpConfig, com.yahoo.search.searchchain.ExecutionFactory)", diff --git a/container-search/src/main/java/com/yahoo/prelude/statistics/StatisticsSearcher.java b/container-search/src/main/java/com/yahoo/prelude/statistics/StatisticsSearcher.java index 63704788b20..1d1c446f6e1 100644 --- a/container-search/src/main/java/com/yahoo/prelude/statistics/StatisticsSearcher.java +++ b/container-search/src/main/java/com/yahoo/prelude/statistics/StatisticsSearcher.java @@ -3,7 +3,6 @@ package com.yahoo.prelude.statistics; import com.yahoo.component.chain.dependencies.Before; import com.yahoo.concurrent.CopyOnWriteHashMap; -import com.yahoo.container.protect.Error; import com.yahoo.jdisc.Metric; import com.yahoo.jdisc.http.HttpRequest; import com.yahoo.metrics.simple.MetricReceiver; @@ -19,8 +18,6 @@ import com.yahoo.search.result.Hit; import com.yahoo.search.result.HitGroup; import com.yahoo.search.searchchain.Execution; import com.yahoo.search.searchchain.PhaseNames; -import com.yahoo.statistics.Counter; -import com.yahoo.statistics.Value; import java.util.HashMap; import java.util.Map; @@ -76,19 +73,7 @@ public class StatisticsSearcher extends Searcher { private static final String RELEVANCE_AT_3_METRIC = "relevance.at_3"; private static final String RELEVANCE_AT_10_METRIC = "relevance.at_10"; - private final Counter queriesCounter; // basic counter - private final Counter failedQueriesCounter; // basic counter - private final Counter nullQueriesCounter; // basic counter - private final Counter illegalQueriesCounter; // basic counter - private final Value meanQueryLatency; // mean pr 5 min - private final Value queryLatencyBuckets; - private final Value maxQueryLatency; // separate to avoid name mangling @SuppressWarnings("unused") // all the work is done by the callback - private final Value peakQPS; // peak 1s QPS - private final Counter emptyResultsCounter; // number of results containing no concrete hits - private final Value hitsPerQuery; // mean number of hits per query - private final Value totalHitsPerQuery; - private final PeakQpsReporter peakQpsReporter; // Naming of enums are reflected directly in metric dimensions and should not be changed as they are public API @@ -123,7 +108,6 @@ public class StatisticsSearcher extends Searcher { private void flushPeakQps(long now) { double ms = (double) (now - prevMaxQPSTime); final double value = ((double)queriesForQPS) / (ms / 1000.0); - peakQPS.put(value); metric.set(PEAK_QPS_METRIC, value, metricContext); prevMaxQPSTime = now; queriesForQPS = 0; @@ -135,22 +119,10 @@ public class StatisticsSearcher extends Searcher { } } - public StatisticsSearcher(com.yahoo.statistics.Statistics manager, Metric metric, MetricReceiver metricReceiver) { + public StatisticsSearcher(Metric metric, MetricReceiver metricReceiver) { this.peakQpsReporter = new PeakQpsReporter(); this.metric = metric; - queriesCounter = new Counter(QUERIES_METRIC, manager, false); - failedQueriesCounter = new Counter(FAILED_QUERIES_METRIC, manager, false); - nullQueriesCounter = new Counter("null_queries", manager, false); - illegalQueriesCounter = new Counter("illegal_queries", manager, false); - meanQueryLatency = new Value(MEAN_QUERY_LATENCY_METRIC, manager, new Value.Parameters().setLogRaw(false).setLogMean(true).setNameExtension(false)); - maxQueryLatency = new Value(MAX_QUERY_LATENCY_METRIC, manager, new Value.Parameters().setLogRaw(false).setLogMax(true).setNameExtension(false)); - queryLatencyBuckets = Value.buildValue(QUERY_LATENCY_METRIC, manager, null); - peakQPS = new Value(PEAK_QPS_METRIC, manager, new Value.Parameters().setLogRaw(false).setLogMax(true).setNameExtension(false)); - hitsPerQuery = new Value(HITS_PER_QUERY_METRIC, manager, new Value.Parameters().setLogRaw(false).setLogMean(true).setNameExtension(false)); - totalHitsPerQuery = new Value(TOTALHITS_PER_QUERY_METRIC, manager, new Value.Parameters().setLogRaw(false).setLogMean(true).setNameExtension(false)); - - emptyResultsCounter = new Counter(EMPTY_RESULTS_METRIC, manager, false); metricReceiver.declareGauge(QUERY_LATENCY_METRIC, Optional.empty(), new MetricSettings.Builder().histogram(true).build()); metricReceiver.declareGauge(HITS_PER_QUERY_METRIC, Optional.empty(), new MetricSettings.Builder().histogram(true).build()); metricReceiver.declareGauge(TOTALHITS_PER_QUERY_METRIC, Optional.empty(), new MetricSettings.Builder().histogram(true).build()); @@ -265,7 +237,7 @@ public class StatisticsSearcher extends Searcher { } else { getLogger().log(Level.WARNING, "Apparently negative latency measure, start: " + start_ns - + ", end: " + end_ns + ", for query: " + query.toString()); + + ", end: " + end_ns + ", for query: " + query); } if (result.hits().getError() != null) { incrErrorCount(result, metricContext); @@ -281,16 +253,12 @@ public class StatisticsSearcher extends Searcher { metric.add(DOCS_TOTAL_METRIC, queryCoverage.getActive(), metricContext); } int hitCount = result.getConcreteHitCount(); - hitsPerQuery.put(hitCount); metric.set(HITS_PER_QUERY_METRIC, (double) hitCount, metricContext); long totalHitCount = result.getTotalHitCount(); - totalHitsPerQuery.put(totalHitCount); metric.set(TOTALHITS_PER_QUERY_METRIC, (double) totalHitCount, metricContext); - metric.set(QUERY_HIT_OFFSET_METRIC, (double) (query.getHits() + query.getOffset()), metricContext); if (hitCount == 0) { - emptyResultsCounter.increment(); metric.add(EMPTY_RESULTS_METRIC, 1, metricContext); } @@ -309,31 +277,20 @@ public class StatisticsSearcher extends Searcher { private void addLatency(long latency_ns, Metric.Context metricContext) { double latency = 0.000001 * latency_ns; - //myStats.addLatency(latency); - meanQueryLatency.put(latency); metric.set(QUERY_LATENCY_METRIC, latency, metricContext); metric.set(MEAN_QUERY_LATENCY_METRIC, latency, metricContext); - maxQueryLatency.put(latency); metric.set(MAX_QUERY_LATENCY_METRIC, latency, metricContext); - queryLatencyBuckets.put(latency); } private void incrQueryCount(Metric.Context metricContext) { - //myStats.incrQueryCnt(); - queriesCounter.increment(); metric.add(QUERIES_METRIC, 1, metricContext); } private void incrErrorCount(Result result, Metric.Context metricContext) { - failedQueriesCounter.increment(); metric.add(FAILED_QUERIES_METRIC, 1, metricContext); if (result == null) // the chain threw an exception metric.add("error.unhandled_exception", 1, metricContext); - else if (result.hits().getErrorHit().hasOnlyErrorCode(Error.NULL_QUERY.code)) - nullQueriesCounter.increment(); - else if (result.hits().getErrorHit().hasOnlyErrorCode(Error.ILLEGAL_QUERY.code)) - illegalQueriesCounter.increment(); } /** diff --git a/container-search/src/main/java/com/yahoo/search/handler/SearchHandler.java b/container-search/src/main/java/com/yahoo/search/handler/SearchHandler.java index a38dd5dc67a..52a3672e7a2 100644 --- a/container-search/src/main/java/com/yahoo/search/handler/SearchHandler.java +++ b/container-search/src/main/java/com/yahoo/search/handler/SearchHandler.java @@ -49,10 +49,7 @@ import com.yahoo.search.statistics.ElapsedTime; import com.yahoo.slime.Inspector; import com.yahoo.slime.ObjectTraverser; import com.yahoo.slime.SlimeUtils; -import com.yahoo.statistics.Callback; -import com.yahoo.statistics.Handle; import com.yahoo.statistics.Statistics; -import com.yahoo.statistics.Value; import com.yahoo.vespa.configdefinition.SpecialtokensConfig; import com.yahoo.yolean.Exceptions; import com.yahoo.yolean.trace.TraceNode; @@ -93,9 +90,6 @@ public class SearchHandler extends LoggingRequestHandler { static final String RENDERER_DIMENSION = "renderer"; private static final String JSON_CONTENT_TYPE = "application/json"; - - private final Value searchConnections; - public static final String defaultSearchChainName = "default"; private static final String fallbackSearchChain = "vespa"; @@ -105,30 +99,26 @@ public class SearchHandler extends LoggingRequestHandler { private final Optional<String> hostResponseHeaderKey; private final String selfHostname = HostName.getLocalhost(); - private final Embedder embedder; - private final ExecutionFactory executionFactory; - private final AtomicLong numRequestsLeftToTrace; private final static RequestHandlerSpec REQUEST_HANDLER_SPEC = RequestHandlerSpec.builder() .withAclMapping(SearchHandler.aclRequestMapper()).build(); - private final class MeanConnections implements Callback { - - @Override - public void run(Handle h, boolean firstTime) { - if (firstTime) { - metric.set(SEARCH_CONNECTIONS, 0.0d, null); - return; - } - Value v = (Value) h; - metric.set(SEARCH_CONNECTIONS, v.getMean(), null); - } + @Inject + public SearchHandler(Metric metric, + ContainerThreadPool threadpool, + CompiledQueryProfileRegistry queryProfileRegistry, + ContainerHttpConfig config, + Embedder embedder, + ExecutionFactory executionFactory) { + this(metric, threadpool.executor(), queryProfileRegistry, embedder, executionFactory, + config.numQueriesToTraceOnDebugAfterConstruction(), + config.hostResponseHeaderKey().equals("") ? Optional.empty() : Optional.of(config.hostResponseHeaderKey())); } - @Inject + @Deprecated public SearchHandler(Statistics statistics, Metric metric, ContainerThreadPool threadpool, @@ -136,7 +126,7 @@ public class SearchHandler extends LoggingRequestHandler { ContainerHttpConfig config, Embedder embedder, ExecutionFactory executionFactory) { - this(statistics, metric, threadpool.executor(), queryProfileRegistry, embedder, executionFactory, + this(metric, threadpool.executor(), queryProfileRegistry, embedder, executionFactory, config.numQueriesToTraceOnDebugAfterConstruction(), config.hostResponseHeaderKey().equals("") ? Optional.empty() : Optional.of(config.hostResponseHeaderKey())); } @@ -166,12 +156,7 @@ public class SearchHandler extends LoggingRequestHandler { CompiledQueryProfileRegistry queryProfileRegistry, ContainerHttpConfig containerHttpConfig, ExecutionFactory executionFactory) { - this(statistics, - metric, - executor, - queryProfileRegistry, - Embedder.throwsOnUse, - executionFactory, + this(metric, executor, queryProfileRegistry, Embedder.throwsOnUse, executionFactory, containerHttpConfig.numQueriesToTraceOnDebugAfterConstruction(), containerHttpConfig.hostResponseHeaderKey().equals("") ? Optional.empty() : Optional.of(containerHttpConfig.hostResponseHeaderKey())); @@ -188,12 +173,8 @@ public class SearchHandler extends LoggingRequestHandler { QueryProfilesConfig queryProfileConfig, ContainerHttpConfig containerHttpConfig, ExecutionFactory executionFactory) { - this(statistics, - metric, - executor, - QueryProfileConfigurer.createFromConfig(queryProfileConfig).compile(), - Embedder.throwsOnUse, - executionFactory, + this(metric, executor, QueryProfileConfigurer.createFromConfig(queryProfileConfig).compile(), + Embedder.throwsOnUse, executionFactory, containerHttpConfig.numQueriesToTraceOnDebugAfterConstruction(), containerHttpConfig.hostResponseHeaderKey().equals("") ? Optional.empty() : Optional.of( containerHttpConfig.hostResponseHeaderKey())); @@ -210,12 +191,11 @@ public class SearchHandler extends LoggingRequestHandler { CompiledQueryProfileRegistry queryProfileRegistry, ExecutionFactory executionFactory, Optional<String> hostResponseHeaderKey) { - this(statistics, metric, executor, queryProfileRegistry, Embedder.throwsOnUse, + this(metric, executor, queryProfileRegistry, Embedder.throwsOnUse, executionFactory, 0, hostResponseHeaderKey); } - private SearchHandler(Statistics statistics, - Metric metric, + private SearchHandler(Metric metric, Executor executor, CompiledQueryProfileRegistry queryProfileRegistry, Embedder embedder, @@ -230,14 +210,9 @@ public class SearchHandler extends LoggingRequestHandler { this.maxThreads = examineExecutor(executor); - searchConnections = new Value(SEARCH_CONNECTIONS, statistics, - new Value.Parameters().setLogRaw(true).setLogMax(true) - .setLogMean(true).setLogMin(true) - .setNameExtension(true) - .setCallback(new MeanConnections())); - this.hostResponseHeaderKey = hostResponseHeaderKey; this.numRequestsLeftToTrace = new AtomicLong(numQueriesToTraceOnDebugAfterStartup); + metric.set(SEARCH_CONNECTIONS, 0.0d, null); } /** @deprecated use the other constructor */ @@ -487,13 +462,8 @@ public class SearchHandler extends LoggingRequestHandler { query.trace("Invoking " + searchChain, false, 2); } - if (searchConnections != null) { - connectionStatistics(); - } else { - log.log(Level.WARNING, - "searchConnections is a null reference, probably a known race condition during startup.", - new IllegalStateException("searchConnections reference is null.")); - } + connectionStatistics(); + try { return searchAndFill(query, searchChain); } catch (ParseException e) { @@ -525,24 +495,24 @@ public class SearchHandler extends LoggingRequestHandler { } private void connectionStatistics() { + if (maxThreads <= 3) return; + int connections = requestsInFlight.intValue(); - searchConnections.put(connections); - if (maxThreads > 3) { - // cast to long to avoid overflows if maxThreads is at no - // log value (maxint) - long maxThreadsAsLong = maxThreads; - long connectionsAsLong = connections; - // only log when exactly crossing the limit to avoid - // spamming the log - if (connectionsAsLong < maxThreadsAsLong * 9L / 10L) { - // NOP - } else if (connectionsAsLong == maxThreadsAsLong * 9L / 10L) { - log.log(Level.WARNING, threadConsumptionMessage(connections, maxThreads, "90")); - } else if (connectionsAsLong == maxThreadsAsLong * 95L / 100L) { - log.log(Level.WARNING, threadConsumptionMessage(connections, maxThreads, "95")); - } else if (connectionsAsLong == maxThreadsAsLong) { - log.log(Level.WARNING, threadConsumptionMessage(connections, maxThreads, "100")); - } + metric.set(SEARCH_CONNECTIONS, connections, null); + // cast to long to avoid overflows if maxThreads is at no + // log value (maxint) + long maxThreadsAsLong = maxThreads; + long connectionsAsLong = connections; + // only log when exactly crossing the limit to avoid + // spamming the log + if (connectionsAsLong < maxThreadsAsLong * 9L / 10L) { + // NOP + } else if (connectionsAsLong == maxThreadsAsLong * 9L / 10L) { + log.log(Level.WARNING, threadConsumptionMessage(connections, maxThreads, "90")); + } else if (connectionsAsLong == maxThreadsAsLong * 95L / 100L) { + log.log(Level.WARNING, threadConsumptionMessage(connections, maxThreads, "95")); + } else if (connectionsAsLong == maxThreadsAsLong) { + log.log(Level.WARNING, threadConsumptionMessage(connections, maxThreads, "100")); } } @@ -598,7 +568,7 @@ public class SearchHandler extends LoggingRequestHandler { } private void traceVespaVersion(Query query) { - query.trace("Vespa version: " + Vtag.currentVersion.toString(), false, 4); + query.trace("Vespa version: " + Vtag.currentVersion, false, 4); } public SearchChainRegistry getSearchChainRegistry() { return executionFactory.searchChainRegistry(); diff --git a/container-search/src/main/java/com/yahoo/search/statistics/PeakQpsSearcher.java b/container-search/src/main/java/com/yahoo/search/statistics/PeakQpsSearcher.java index e4bce05b4f2..2823a7d74e1 100644 --- a/container-search/src/main/java/com/yahoo/search/statistics/PeakQpsSearcher.java +++ b/container-search/src/main/java/com/yahoo/search/statistics/PeakQpsSearcher.java @@ -14,13 +14,19 @@ import com.yahoo.statistics.Handle; import com.yahoo.statistics.Statistics; import com.yahoo.statistics.Value; -import java.util.*; +import java.util.ArrayDeque; +import java.util.ArrayList; +import java.util.Deque; +import java.util.List; +import java.util.ListIterator; /** * Aggregate peak qps and expose through meta hits and/or log events. * * @author Steinar Knutsen + * @deprecated Will be removed on Vespa 8 */ +@Deprecated public class PeakQpsSearcher extends Searcher { private final ThreadLocalDirectory<Deque<QueryRatePerSecond>, Long> directory; diff --git a/container-search/src/main/java/com/yahoo/search/statistics/TimingSearcher.java b/container-search/src/main/java/com/yahoo/search/statistics/TimingSearcher.java index 8aa68d83d88..5d036b8fa20 100644 --- a/container-search/src/main/java/com/yahoo/search/statistics/TimingSearcher.java +++ b/container-search/src/main/java/com/yahoo/search/statistics/TimingSearcher.java @@ -19,8 +19,10 @@ import com.yahoo.statistics.Value; * measuring time consumption a search chain. * * @author Steinar Knutsen + * @deprecated Will be removed on Vespa 8 */ @Before("rawQuery") +@Deprecated public class TimingSearcher extends PingableSearcher { private Value measurements; diff --git a/container-search/src/test/java/com/yahoo/search/statistics/PeakQpsTestCase.java b/container-search/src/test/java/com/yahoo/search/statistics/PeakQpsTestCase.java deleted file mode 100644 index 4bc8ee76165..00000000000 --- a/container-search/src/test/java/com/yahoo/search/statistics/PeakQpsTestCase.java +++ /dev/null @@ -1,164 +0,0 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -package com.yahoo.search.statistics; - -import static org.junit.Assert.*; - -import java.util.Deque; -import java.util.List; - -import com.yahoo.statistics.Statistics; -import org.junit.Test; - -import com.yahoo.component.chain.Chain; -import com.yahoo.concurrent.LocalInstance; -import com.yahoo.concurrent.ThreadLocalDirectory; -import com.yahoo.search.Query; -import com.yahoo.search.Result; -import com.yahoo.search.Searcher; -import com.yahoo.search.result.Hit; -import com.yahoo.search.searchchain.Execution; -import com.yahoo.search.statistics.PeakQpsSearcher.QueryRatePerSecond; - -/** - * Check peak QPS aggregation has a chance of working. - * - * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a> - */ -public class PeakQpsTestCase { - - static class Producer implements Runnable { - private final ThreadLocalDirectory<Deque<QueryRatePerSecond>, Long> rates; - - Producer(ThreadLocalDirectory<Deque<QueryRatePerSecond>, Long> rates) { - this.rates = rates; - } - - @Override - public void run() { - LocalInstance<Deque<QueryRatePerSecond>, Long> rate = rates.getLocalInstance(); - rates.update(1L, rate); - rates.update(2L, rate); - rates.update(2L, rate); - rates.update(3L, rate); - rates.update(3L, rate); - rates.update(3L, rate); - rates.update(4L, rate); - rates.update(4L, rate); - rates.update(4L, rate); - rates.update(4L, rate); - } - } - - static class LaterProducer implements Runnable { - private final ThreadLocalDirectory<Deque<QueryRatePerSecond>, Long> rates; - - LaterProducer(ThreadLocalDirectory<Deque<QueryRatePerSecond>, Long> rates) { - this.rates = rates; - } - - @Override - public void run() { - LocalInstance<Deque<QueryRatePerSecond>, Long> rate = rates.getLocalInstance(); - rates.update(2L, rate); - rates.update(2L, rate); - rates.update(3L, rate); - rates.update(3L, rate); - rates.update(3L, rate); - rates.update(5L, rate); - rates.update(5L, rate); - rates.update(6L, rate); - rates.update(7L, rate); - } - } - - @Test - public void checkBasicDataAggregation() { - ThreadLocalDirectory<Deque<QueryRatePerSecond>, Long> directory = PeakQpsSearcher.createDirectory(); - final int threadCount = 20; - Thread[] threads = new Thread[threadCount]; - for (int i = 0; i < threadCount; ++i) { - Producer p = new Producer(directory); - threads[i] = new Thread(p); - threads[i].start(); - } - for (Thread t : threads) { - try { - t.join(); - } catch (InterruptedException e) { - // nop - } - } - List<Deque<QueryRatePerSecond>> measurements = directory.fetch(); - List<QueryRatePerSecond> results = PeakQpsSearcher.merge(measurements); - assertTrue(results.get(0).when == 1L); - assertTrue(results.get(0).howMany == threadCount); - assertTrue(results.get(1).when == 2L); - assertTrue(results.get(1).howMany == threadCount * 2); - assertTrue(results.get(2).when == 3L); - assertTrue(results.get(2).howMany == threadCount * 3); - assertTrue(results.get(3).when == 4L); - assertTrue(results.get(3).howMany == threadCount * 4); - } - - @Test - public void checkMixedDataAggregation() { - ThreadLocalDirectory<Deque<QueryRatePerSecond>, Long> directory = PeakQpsSearcher.createDirectory(); - final int firstThreads = 20; - final int secondThreads = 20; - final int threadCount = firstThreads + secondThreads; - Thread[] threads = new Thread[threadCount]; - for (int i = 0; i < threadCount; ++i) { - if (i < firstThreads) { - Producer p = new Producer(directory); - threads[i] = new Thread(p); - } else { - LaterProducer p = new LaterProducer(directory); - threads[i] = new Thread(p); - } - threads[i].start(); - - } - for (Thread t : threads) { - try { - t.join(); - } catch (InterruptedException e) { - // nop - } - } - List<Deque<QueryRatePerSecond>> measurements = directory.fetch(); - List<QueryRatePerSecond> results = PeakQpsSearcher.merge(measurements); - assertTrue(results.size() == 7); - assertTrue(results.get(0).when == 1L); - assertTrue(results.get(0).howMany == firstThreads); - assertTrue(results.get(1).when == 2L); - assertTrue(results.get(1).howMany == threadCount * 2); - assertTrue(results.get(2).when == 3L); - assertTrue(results.get(2).howMany == threadCount * 3); - assertTrue(results.get(3).when == 4L); - assertTrue(results.get(3).howMany == firstThreads * 4); - assertTrue(results.get(4).when == 5L); - assertTrue(results.get(4).howMany == secondThreads * 2); - assertTrue(results.get(5).when == 6L); - assertTrue(results.get(5).howMany == secondThreads); - assertTrue(results.get(6).when == 7L); - assertTrue(results.get(6).howMany == secondThreads); - } - - @Test - public void checkSearch() { - MeasureQpsConfig config = new MeasureQpsConfig( - new MeasureQpsConfig.Builder().outputmethod( - MeasureQpsConfig.Outputmethod.METAHIT).queryproperty( - "qpsprobe")); - Searcher s = new PeakQpsSearcher(config, Statistics.nullImplementation); - Chain<Searcher> c = new Chain<>(s); - Execution e = new Execution(c, Execution.Context.createContextStub()); - e.search(new Query("/?query=a")); - new Execution(c, Execution.Context.createContextStub()); - Result r = e.search(new Query("/?query=a&qpsprobe=true")); - final Hit hit = r.hits().get(0); - assertTrue(hit instanceof PeakQpsSearcher.QpsHit); - assertNotNull(hit.fields().get(PeakQpsSearcher.QpsHit.MEAN_QPS)); - assertNotNull(hit.fields().get(PeakQpsSearcher.QpsHit.PEAK_QPS)); - } -} diff --git a/container-search/src/test/java/com/yahoo/search/statistics/TimingSearcherTestCase.java b/container-search/src/test/java/com/yahoo/search/statistics/TimingSearcherTestCase.java deleted file mode 100644 index 673d38cc2b8..00000000000 --- a/container-search/src/test/java/com/yahoo/search/statistics/TimingSearcherTestCase.java +++ /dev/null @@ -1,89 +0,0 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -package com.yahoo.search.statistics; - -import com.yahoo.component.ComponentId; -import com.yahoo.prelude.Ping; -import com.yahoo.search.Query; -import com.yahoo.search.Result; -import com.yahoo.search.result.Hit; -import com.yahoo.search.searchchain.Execution; -import com.yahoo.search.statistics.TimingSearcher.Parameters; -import com.yahoo.statistics.Statistics; -import com.yahoo.statistics.Value; -import org.junit.Test; - -import static org.junit.Assert.assertEquals; - -public class TimingSearcherTestCase { - - public static class MockValue extends Value { - public int putCount = 0; - - public MockValue() { - super("mock", Statistics.nullImplementation, new Value.Parameters()); - } - - @Override - public void put(double x) { - putCount += 1; - } - } - - @Test - public void testMeasurementSearchPath() { - Parameters p = new Parameters("timingtest", TimeTracker.Activity.SEARCH); - TimingSearcher ts = new TimingSearcher(new ComponentId("lblblbl"), p, Statistics.nullImplementation); - MockValue v = new MockValue(); - ts.setMeasurements(v); - Execution exec = new Execution(ts, Execution.Context.createContextStub()); - Result r = exec.search(new Query("/?query=a")); - Hit f = new Hit("blblbl"); - f.setFillable(); - r.hits().add(f); - exec.fill(r, "whatever"); - exec.fill(r, "lalala"); - exec.ping(new Ping()); - exec.ping(new Ping()); - exec.ping(new Ping()); - assertEquals(1, v.putCount); - } - - @Test - public void testMeasurementFillPath() { - Parameters p = new Parameters("timingtest", TimeTracker.Activity.FILL); - TimingSearcher ts = new TimingSearcher(new ComponentId("lblblbl"), p, Statistics.nullImplementation); - MockValue v = new MockValue(); - ts.setMeasurements(v); - Execution exec = new Execution(ts, Execution.Context.createContextStub()); - Result r = exec.search(new Query("/?query=a")); - Hit f = new Hit("blblbl"); - f.setFillable(); - r.hits().add(f); - exec.fill(r, "whatever"); - exec.fill(r, "lalala"); - exec.ping(new Ping()); - exec.ping(new Ping()); - exec.ping(new Ping()); - assertEquals(2, v.putCount); - } - - @Test - public void testMeasurementPingPath() { - Parameters p = new Parameters("timingtest", TimeTracker.Activity.PING); - TimingSearcher ts = new TimingSearcher(new ComponentId("lblblbl"), p, Statistics.nullImplementation); - MockValue v = new MockValue(); - ts.setMeasurements(v); - Execution exec = new Execution(ts, Execution.Context.createContextStub()); - Result r = exec.search(new Query("/?query=a")); - Hit f = new Hit("blblbl"); - f.setFillable(); - r.hits().add(f); - exec.fill(r, "whatever"); - exec.fill(r, "lalala"); - exec.ping(new Ping()); - exec.ping(new Ping()); - exec.ping(new Ping()); - assertEquals(3, v.putCount); - } - -} diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/ZipBuilderTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/ZipBuilderTest.java index fd2de2e1c1d..f48658af7e3 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/ZipBuilderTest.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/deployment/ZipBuilderTest.java @@ -59,4 +59,5 @@ public class ZipBuilderTest { } return contents; } + }
\ No newline at end of file diff --git a/docproc/abi-spec.json b/docproc/abi-spec.json index 116e2c9edfb..e2bbfd8ec10 100644 --- a/docproc/abi-spec.json +++ b/docproc/abi-spec.json @@ -79,8 +79,10 @@ ], "methods": [ "public void <init>(com.yahoo.docproc.DocumentProcessor)", + "public void <init>(com.yahoo.docproc.DocumentProcessor, com.yahoo.jdisc.Metric)", "public void <init>(com.yahoo.docproc.DocumentProcessor, com.yahoo.statistics.Statistics, com.yahoo.jdisc.Metric)", "public void <init>(com.yahoo.docproc.DocumentProcessor, java.lang.String, com.yahoo.statistics.Statistics, com.yahoo.jdisc.Metric)", + "public void <init>(com.yahoo.docproc.DocumentProcessor, java.lang.String, com.yahoo.jdisc.Metric)", "public java.lang.Object clone()", "public com.yahoo.docproc.DocumentProcessor getDocumentProcessor()", "public com.yahoo.component.ComponentId getDocumentProcessorId()", @@ -99,9 +101,12 @@ "methods": [ "public void <init>()", "public void <init>(java.lang.String)", + "public void <init>(com.yahoo.jdisc.Metric)", "public void <init>(com.yahoo.statistics.Statistics, com.yahoo.jdisc.Metric)", "public void <init>(java.lang.String, com.yahoo.statistics.Statistics, com.yahoo.jdisc.Metric)", + "public void <init>(java.lang.String, com.yahoo.jdisc.Metric)", "public void <init>(com.yahoo.docproc.CallStack)", + "public void <init>(java.lang.String, java.util.Collection, com.yahoo.jdisc.Metric)", "public void <init>(java.lang.String, java.util.Collection, com.yahoo.statistics.Statistics, com.yahoo.jdisc.Metric)", "public java.lang.String getName()", "public void setName(java.lang.String)", diff --git a/docproc/src/main/java/com/yahoo/docproc/Call.java b/docproc/src/main/java/com/yahoo/docproc/Call.java index 3598ddaff6c..c640dbcf832 100644 --- a/docproc/src/main/java/com/yahoo/docproc/Call.java +++ b/docproc/src/main/java/com/yahoo/docproc/Call.java @@ -11,7 +11,6 @@ import com.yahoo.document.DocumentPut; import com.yahoo.document.DocumentUpdate; import com.yahoo.jdisc.Metric; import com.yahoo.concurrent.SystemTimer; -import com.yahoo.statistics.Counter; import com.yahoo.statistics.Statistics; import java.util.List; @@ -25,14 +24,12 @@ import java.util.List; public class Call implements Cloneable { private final DocumentProcessor processor; - private final Counter docCounter; private final String docCounterName; - private final Counter procTimeCounter; private final String procTimeCounterName; private final Metric metric; public Call(DocumentProcessor processor) { - this(processor, Statistics.nullImplementation, new NullMetric()); + this(processor, new NullMetric()); } /** @@ -40,11 +37,19 @@ public class Call implements Cloneable { * * @param processor the document processor to call */ + public Call(DocumentProcessor processor, Metric metric) { + this(processor, "", metric); + } + @Deprecated public Call(DocumentProcessor processor, Statistics manager, Metric metric) { - this(processor, "", manager, metric); + this(processor, "", metric); } - + @Deprecated public Call(DocumentProcessor processor, String chainName, Statistics manager, Metric metric) { + this(processor, chainName, metric); + } + + public Call(DocumentProcessor processor, String chainName, Metric metric) { this.processor = processor; if (chainName == null) chainName = ""; @@ -53,8 +58,6 @@ public class Call implements Cloneable { getDocumentProcessorId().stringValue().replaceAll("[^\\p{Alnum}]", "_") + "_documents"; procTimeCounterName = "docprocessor_" + chainName + "_" + getDocumentProcessorId().stringValue().replaceAll("[^\\p{Alnum}]", "_") + "_proctime"; - docCounter = new Counter(docCounterName, manager, false); - procTimeCounter = new Counter(procTimeCounterName, manager, false, null, true); this.metric = metric; } @@ -171,12 +174,10 @@ public class Call implements Cloneable { } private void incrementDocs(long increment) { - docCounter.increment(increment); metric.add(docCounterName, increment, null); } private void incrementProcTime(long increment) { - procTimeCounter.increment(increment); metric.add(procTimeCounterName, increment, null); } diff --git a/docproc/src/main/java/com/yahoo/docproc/CallStack.java b/docproc/src/main/java/com/yahoo/docproc/CallStack.java index 41adce4b23c..9f59d9e869b 100644 --- a/docproc/src/main/java/com/yahoo/docproc/CallStack.java +++ b/docproc/src/main/java/com/yahoo/docproc/CallStack.java @@ -31,29 +31,33 @@ public class CallStack { /** The last element popped from the call stack, if any */ private Call lastPopped = null; - /** Used for creating counters in Call */ - private final Statistics statistics; - /** Used for metrics in Call */ private final Metric metric; public CallStack() { - this(null, Statistics.nullImplementation, new NullMetric()); + this(new NullMetric()); } public CallStack(String name) { - this(name, Statistics.nullImplementation, new NullMetric()); + this(name, new NullMetric()); } /** Creates an empty stack */ + public CallStack(Metric metric) { + this.name = null; + this.metric = metric; + } + @Deprecated public CallStack(Statistics statistics, Metric metric) { - this(null, statistics, metric); + this(metric); } - - /** Creates an empty stack with a name */ + @Deprecated public CallStack(String name, Statistics manager, Metric metric) { + this(name, metric); + } + /** Creates an empty stack with a name */ + public CallStack(String name, Metric metric) { this.name = name; - this.statistics = manager; this.metric = metric; } @@ -67,7 +71,6 @@ public class CallStack { Call callToCopy = i.next(); elements.add((Call) callToCopy.clone()); } - this.statistics = stackToCopy.statistics; this.metric = stackToCopy.metric; } @@ -78,12 +81,16 @@ public class CallStack { * @param name the name of the stack * @param docprocs the document processors to call */ - public CallStack(String name, Collection<DocumentProcessor> docprocs, Statistics manager, Metric metric) { - this(name, manager, metric); + public CallStack(String name, Collection<DocumentProcessor> docprocs, Metric metric) { + this(name, metric); for (DocumentProcessor docproc : docprocs) { addLast(docproc); } } + @Deprecated + public CallStack(String name, Collection<DocumentProcessor> docprocs, Statistics manager, Metric metric) { + this(name, docprocs, metric); + } /** Returns the name of this stack, or null if it is not named */ public String getName() { @@ -111,7 +118,7 @@ public class CallStack { * @return this for convenience */ public CallStack addNext(DocumentProcessor processor) { - return addNext(new Call(processor, name, statistics, metric)); + return addNext(new Call(processor, name, metric)); } /** @@ -140,7 +147,7 @@ public class CallStack { * @return this for convenience */ public CallStack addLast(DocumentProcessor processor) { - return addLast(new Call(processor, name, statistics, metric)); + return addLast(new Call(processor, name, metric)); } /** @@ -186,7 +193,7 @@ public class CallStack { * @return this for convenience */ public CallStack addBefore(Call before, DocumentProcessor processor) { - return addBefore(before, new Call(processor, name, statistics, metric)); + return addBefore(before, new Call(processor, name, metric)); } /** @@ -240,7 +247,7 @@ public class CallStack { * @return this for convenience */ public CallStack addAfter(Call after, DocumentProcessor processor) { - return addAfter(after, new Call(processor, name, statistics, metric)); + return addAfter(after, new Call(processor, name, metric)); } /** @@ -377,8 +384,9 @@ public class CallStack { return b.toString(); } + @Deprecated public Statistics getStatistics() { - return statistics; + return null; } public Metric getMetric() { diff --git a/docproc/src/main/java/com/yahoo/docproc/DocprocExecutor.java b/docproc/src/main/java/com/yahoo/docproc/DocprocExecutor.java index 18f7c5bda4c..716fee0e4d9 100644 --- a/docproc/src/main/java/com/yahoo/docproc/DocprocExecutor.java +++ b/docproc/src/main/java/com/yahoo/docproc/DocprocExecutor.java @@ -5,7 +5,6 @@ import com.yahoo.document.DocumentOperation; import com.yahoo.document.DocumentPut; import com.yahoo.document.json.JsonWriter; import com.yahoo.jdisc.Metric; -import com.yahoo.statistics.Counter; import com.yahoo.text.Utf8; import java.util.HashMap; @@ -32,7 +31,6 @@ public class DocprocExecutor { private final String name; private final String docCounterName; - private final Counter docCounter; private final Metric metric; private Function<String, Metric.Context> contexts; private final CallStack callStack; @@ -47,7 +45,6 @@ public class DocprocExecutor { this.name = name; String chainDimension = name != null ? name.replaceAll("[^\\p{Alnum}]", "_") : name; docCounterName = "chain_" + chainDimension + "_documents"; - docCounter = new Counter(docCounterName, callStack.getStatistics(), false); this.metric = callStack.getMetric(); this.callStack = callStack; this.callStack.setName(name); @@ -64,7 +61,6 @@ public class DocprocExecutor { public DocprocExecutor(DocprocExecutor oldExecutor, CallStack callStack) { this.name = oldExecutor.name; this.docCounterName = oldExecutor.docCounterName; - this.docCounter = oldExecutor.docCounter; this.metric = oldExecutor.metric; this.contexts = oldExecutor.contexts; this.callStack = callStack; @@ -81,7 +77,6 @@ public class DocprocExecutor { private void incrementNumDocsProcessed(Processing processing) { List<DocumentOperation> operations = processing.getOnceOperationsToBeProcessed(); if ( ! operations.isEmpty()) { - docCounter.increment(operations.size()); metric.add(docCounterName, operations.size(), null); operations.stream() .collect(groupingBy(operation -> operation.getId().getDocType(), counting())) @@ -114,7 +109,6 @@ public class DocprocExecutor { return progress; } - progress = DocumentProcessor.Progress.DONE; //might throw exception, which is OK: progress = call.call(processing); diff --git a/docproc/src/main/java/com/yahoo/docproc/jdisc/DocumentProcessingHandler.java b/docproc/src/main/java/com/yahoo/docproc/jdisc/DocumentProcessingHandler.java index 95558fbb524..acbedaf1156 100644 --- a/docproc/src/main/java/com/yahoo/docproc/jdisc/DocumentProcessingHandler.java +++ b/docproc/src/main/java/com/yahoo/docproc/jdisc/DocumentProcessingHandler.java @@ -25,7 +25,6 @@ import com.yahoo.jdisc.handler.ContentChannel; import com.yahoo.jdisc.handler.ResponseHandler; import com.yahoo.messagebus.jdisc.MbusRequest; import com.yahoo.processing.execution.chain.ChainRegistry; -import com.yahoo.statistics.Statistics; import java.util.TimerTask; import java.util.concurrent.ScheduledThreadPoolExecutor; @@ -43,7 +42,7 @@ import static com.yahoo.component.chain.model.ChainsModelBuilder.buildFromConfig */ public class DocumentProcessingHandler extends AbstractRequestHandler { - private static Logger log = Logger.getLogger(DocumentProcessingHandler.class.getName()); + private static final Logger log = Logger.getLogger(DocumentProcessingHandler.class.getName()); private final ComponentRegistry<DocprocService> docprocServiceRegistry; private final ComponentRegistry<AbstractConcreteDocumentFactory> docFactoryRegistry; private final ChainRegistry<DocumentProcessor> chainRegistry = new ChainRegistry<>(); @@ -57,7 +56,7 @@ public class DocumentProcessingHandler extends AbstractRequestHandler { ComponentRegistry<AbstractConcreteDocumentFactory> docFactoryRegistry, int numThreads, DocumentTypeManager documentTypeManager, - ChainsModel chainsModel, SchemaMap schemaMap, Statistics statistics, + ChainsModel chainsModel, SchemaMap schemaMap, Metric metric, ContainerDocumentConfig containerDocConfig) { this.docprocServiceRegistry = docprocServiceRegistry; @@ -73,7 +72,7 @@ public class DocumentProcessingHandler extends AbstractRequestHandler { for (Chain<DocumentProcessor> chain : chainRegistry.allComponents()) { log.config("Setting up call stack for chain " + chain.getId()); - DocprocService service = new DocprocService(chain.getId(), convertToCallStack(chain, statistics, metric), documentTypeManager, computeNumThreads(numThreads)); + DocprocService service = new DocprocService(chain.getId(), convertToCallStack(chain, metric), documentTypeManager, computeNumThreads(numThreads)); service.setInService(true); docprocServiceRegistry.register(service.getId(), service); } @@ -91,7 +90,6 @@ public class DocumentProcessingHandler extends AbstractRequestHandler { this(docprocServiceRegistry, documentProcessorComponentRegistry, docFactoryRegistry, params.getMaxNumThreads(), params.getDocumentTypeManager(), params.getChainsModel(), params.getSchemaMap(), - params.getStatisticsManager(), params.getMetric(), params.getContainerDocConfig()); } @@ -104,7 +102,6 @@ public class DocumentProcessingHandler extends AbstractRequestHandler { DocumentmanagerConfig docManConfig, DocprocConfig docprocConfig, ContainerDocumentConfig containerDocConfig, - Statistics manager, Metric metric) { this(new ComponentRegistry<>(), documentProcessorComponentRegistry, docFactoryRegistry, @@ -112,7 +109,6 @@ public class DocumentProcessingHandler extends AbstractRequestHandler { .setMaxNumThreads(docprocConfig.numthreads()) .setDocumentTypeManager(new DocumentTypeManager(docManConfig)) .setChainsModel(buildFromConfig(chainsConfig)).setSchemaMap(configureMapping(mappingConfig)) - .setStatisticsManager(manager) .setMetric(metric) .setContainerDocumentConfig(containerDocConfig)); docprocServiceRegistry.freeze(); @@ -139,8 +135,8 @@ public class DocumentProcessingHandler extends AbstractRequestHandler { } - private static CallStack convertToCallStack(Chain<DocumentProcessor> chain, Statistics statistics, Metric metric) { - CallStack stack = new CallStack(chain.getId().stringValue(), statistics, metric); + private static CallStack convertToCallStack(Chain<DocumentProcessor> chain, Metric metric) { + CallStack stack = new CallStack(chain.getId().stringValue(), metric); for (DocumentProcessor processor : chain.components()) { processor.getFieldMap().putAll(DocprocService.schemaMap.chainMap(chain.getId().stringValue(), processor.getId().stringValue())); stack.addLast(processor); @@ -188,9 +184,9 @@ public class DocumentProcessingHandler extends AbstractRequestHandler { laterExecutor.schedule(timerTask, delay, TimeUnit.MILLISECONDS); } - private class LaterTimerTask extends TimerTask { - private DocumentProcessingTask processingTask; - private long delay; + private static class LaterTimerTask extends TimerTask { + private final DocumentProcessingTask processingTask; + private final long delay; private LaterTimerTask(DocumentProcessingTask processingTask, long delay) { this.delay = delay; diff --git a/docproc/src/main/java/com/yahoo/docproc/jdisc/DocumentProcessingHandlerParameters.java b/docproc/src/main/java/com/yahoo/docproc/jdisc/DocumentProcessingHandlerParameters.java index d2fe43ccfed..0f01ffb8ca7 100644 --- a/docproc/src/main/java/com/yahoo/docproc/jdisc/DocumentProcessingHandlerParameters.java +++ b/docproc/src/main/java/com/yahoo/docproc/jdisc/DocumentProcessingHandlerParameters.java @@ -7,7 +7,6 @@ import com.yahoo.docproc.jdisc.metric.NullMetric; import com.yahoo.docproc.proxy.SchemaMap; import com.yahoo.document.DocumentTypeManager; import com.yahoo.jdisc.Metric; -import com.yahoo.statistics.Statistics; /** * Class to hold parameters given to DocumentProcessingHandler, typically used by unit tests. @@ -21,7 +20,6 @@ public class DocumentProcessingHandlerParameters { private DocumentTypeManager documentTypeManager = null; private ChainsModel chainsModel = null; private SchemaMap schemaMap = null; - private Statistics statisticsManager = Statistics.nullImplementation; private Metric metric = new NullMetric(); private ContainerDocumentConfig containerDocConfig; @@ -86,15 +84,6 @@ public class DocumentProcessingHandlerParameters { return this; } - public Statistics getStatisticsManager() { - return statisticsManager; - } - - public DocumentProcessingHandlerParameters setStatisticsManager(Statistics statisticsManager) { - this.statisticsManager = statisticsManager; - return this; - } - public DocumentProcessingHandlerParameters setContainerDocumentConfig(ContainerDocumentConfig containerDocConfig) { this.containerDocConfig = containerDocConfig; return this; diff --git a/docproc/src/test/java/com/yahoo/docproc/SimpleDocumentProcessorTestCase.java b/docproc/src/test/java/com/yahoo/docproc/SimpleDocumentProcessorTestCase.java index b5c36524421..7d5dd11216e 100644 --- a/docproc/src/test/java/com/yahoo/docproc/SimpleDocumentProcessorTestCase.java +++ b/docproc/src/test/java/com/yahoo/docproc/SimpleDocumentProcessorTestCase.java @@ -1,7 +1,6 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.docproc; -import com.yahoo.container.StatisticsConfig; import com.yahoo.jdisc.test.MockMetric; import com.yahoo.document.DataType; import com.yahoo.document.DocumentId; @@ -13,7 +12,6 @@ import com.yahoo.document.DocumentUpdate; import com.yahoo.document.datatypes.StringFieldValue; import com.yahoo.document.idstring.IdIdString; import com.yahoo.jdisc.Metric; -import com.yahoo.statistics.StatisticsImpl; import org.junit.Test; import java.util.Map; @@ -28,7 +26,7 @@ import static org.junit.Assert.assertTrue; public class SimpleDocumentProcessorTestCase { private static DocprocService setupDocprocService(SimpleDocumentProcessor processor, Metric metric) { - CallStack stack = new CallStack("default", new StatisticsImpl(new StatisticsConfig(new StatisticsConfig.Builder())), metric); + CallStack stack = new CallStack("default", metric); stack.addLast(processor); DocprocService service = new DocprocService("default"); service.setCallStack(stack); diff --git a/logserver/src/main/java/com/yahoo/logserver/filter/LogFilterManager.java b/logserver/src/main/java/com/yahoo/logserver/filter/LogFilterManager.java index 66de14a071b..b343758b2bf 100644 --- a/logserver/src/main/java/com/yahoo/logserver/filter/LogFilterManager.java +++ b/logserver/src/main/java/com/yahoo/logserver/filter/LogFilterManager.java @@ -1,11 +1,11 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.logserver.filter; +import com.yahoo.log.LogLevel; + import java.util.HashMap; import java.util.Map; -import com.yahoo.log.LogLevel; - /** * The LogFilterManager keeps track of associations between * LogFilter names and instances, so that access to filters @@ -23,8 +23,6 @@ public class LogFilterManager { LevelFilter allEvents = new LevelFilter(); allEvents.addLevel(LogLevel.EVENT); instance.addLogFilterInternal("system.allevents", allEvents); - instance.addLogFilterInternal("system.metricsevents", new MetricsFilter()); - instance.addLogFilterInternal("system.nometricsevents", new NoMetricsFilter()); instance.addLogFilterInternal("system.all", new NullFilter()); instance.addLogFilterInternal("system.mute", MuteFilter.getInstance()); } diff --git a/logserver/src/main/java/com/yahoo/logserver/filter/MetricsFilter.java b/logserver/src/main/java/com/yahoo/logserver/filter/MetricsFilter.java deleted file mode 100644 index 38c3d4ebee1..00000000000 --- a/logserver/src/main/java/com/yahoo/logserver/filter/MetricsFilter.java +++ /dev/null @@ -1,50 +0,0 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -package com.yahoo.logserver.filter; - -import com.yahoo.log.LogLevel; -import com.yahoo.log.event.Count; -import com.yahoo.log.event.CountGroup; -import com.yahoo.log.event.Event; -import com.yahoo.log.event.Histogram; -import com.yahoo.log.event.MalformedEventException; -import com.yahoo.log.event.Value; -import com.yahoo.log.event.ValueGroup; -import com.yahoo.log.LogMessage; - -/** - * This filter matches events that are used for monitoring, specificly - * the Count and Value events. - * - * @author Bjorn Borud - */ -public class MetricsFilter implements LogFilter { - public boolean isLoggable (LogMessage msg) { - if (msg.getLevel() != LogLevel.EVENT) { - return false; - } - - Event event; - try { - event = msg.getEvent(); - } - catch (MalformedEventException e) { - return false; - } - - // if it is not Count, Value or something which will generate - // Count or Value we don't care - if (! ((event instanceof Count) - || (event instanceof Value) - || (event instanceof Histogram) - || (event instanceof CountGroup) - || (event instanceof ValueGroup))) { - return false; - } - - return true; - } - - public String description () { - return "Match all events representing system metrics (Counts, Values, etc)."; - } -} diff --git a/logserver/src/main/java/com/yahoo/logserver/filter/NoMetricsFilter.java b/logserver/src/main/java/com/yahoo/logserver/filter/NoMetricsFilter.java deleted file mode 100644 index 71782ed8b0a..00000000000 --- a/logserver/src/main/java/com/yahoo/logserver/filter/NoMetricsFilter.java +++ /dev/null @@ -1,21 +0,0 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -package com.yahoo.logserver.filter; - -import com.yahoo.log.LogMessage; - -/** - * This filter is the complement of MetricsFilter - * - * @author Bjorn Borud - */ -public class NoMetricsFilter implements LogFilter { - private final MetricsFilter filter = new MetricsFilter(); - - public boolean isLoggable (LogMessage msg) { - return (! filter.isLoggable(msg)); - } - - public String description () { - return "Matches all log messages except Count and Value events"; - } -} diff --git a/logserver/src/main/java/com/yahoo/logserver/handlers/archive/ArchiverHandler.java b/logserver/src/main/java/com/yahoo/logserver/handlers/archive/ArchiverHandler.java index 0e9eeefcc46..0b44e47f183 100644 --- a/logserver/src/main/java/com/yahoo/logserver/handlers/archive/ArchiverHandler.java +++ b/logserver/src/main/java/com/yahoo/logserver/handlers/archive/ArchiverHandler.java @@ -1,10 +1,7 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.logserver.handlers.archive; -import java.util.logging.Level; import com.yahoo.log.LogMessage; -import com.yahoo.logserver.filter.LogFilter; -import com.yahoo.logserver.filter.LogFilterManager; import com.yahoo.logserver.handlers.AbstractLogHandler; import java.io.File; @@ -14,6 +11,7 @@ import java.util.Calendar; import java.util.GregorianCalendar; import java.util.Iterator; import java.util.TimeZone; +import java.util.logging.Level; import java.util.logging.Logger; @@ -44,7 +42,7 @@ public class ArchiverHandler extends AbstractLogHandler { /** * Max number of log files open at any given time */ - private final int maxFilesOpen = 100; + private static final int maxFilesOpen = 100; /** * The maximum number of bytes we allow a file to grow to @@ -68,11 +66,6 @@ public class ArchiverHandler extends AbstractLogHandler { */ private final LogWriterLRUCache logWriterLRUCache; - /** - * Filtering - */ - private LogFilter filter = null; - private FilesArchived filesArchived; /** @@ -83,17 +76,10 @@ public class ArchiverHandler extends AbstractLogHandler { dateformat = new SimpleDateFormat("yyyy/MM/dd/HH"); dateformat.setTimeZone(TimeZone.getTimeZone("UTC")); - // Set up filtering - String archiveMetrics = System.getProperty("vespa_log_server__archive_metric"); - if ("off".equals(archiveMetrics)) { - filter = LogFilterManager.getLogFilter("system.nometricsevents"); - } - - setLogFilter(filter); + setLogFilter(null); // set up LRU for files - logWriterLRUCache = new LogWriterLRUCache(maxFilesOpen, - (float) 0.75); + logWriterLRUCache = new LogWriterLRUCache(maxFilesOpen, (float) 0.75); } /** diff --git a/logserver/src/test/files/value-events.txt b/logserver/src/test/files/value-events.txt deleted file mode 100644 index d08452ecff9..00000000000 --- a/logserver/src/test/files/value-events.txt +++ /dev/null @@ -1,818 +0,0 @@ -1107248423.987624 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248423.987754 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248423.987809 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248439.235755 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107248439.235871 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107248439.236632 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107248439.236684 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107248423.987624 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248423.987754 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248423.987809 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248439.235755 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107248439.235871 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107248439.236632 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107248439.236684 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107248454.346566 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248454.346701 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248454.346755 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248484.708180 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248484.708309 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248484.708362 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248499.377732 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107248499.377855 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107248499.378618 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107248499.378670 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107248515.068667 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248515.068795 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248515.068848 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248545.429750 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248545.429879 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248545.429933 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248559.510318 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107248559.510382 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107248559.511135 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107248559.511187 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107248575.790604 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248575.790728 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248575.790780 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248606.151589 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248606.151717 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248606.151769 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248619.602250 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107248619.602314 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107248619.603067 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107248619.603119 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107248636.512734 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248636.512861 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248636.512915 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248666.873517 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248666.873740 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248666.873796 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248679.704182 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107248679.704244 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107248679.704995 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107248679.705048 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107248697.234524 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248697.234653 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248697.234708 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248727.595687 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248727.595817 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248727.595870 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248739.755755 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107248739.755880 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107248739.756771 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107248739.756824 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107248757.956408 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248757.956542 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248757.956595 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248788.317656 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248788.317784 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248788.317838 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248799.887618 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107248799.887747 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107248799.888510 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107248799.888563 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107248818.678404 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248818.678542 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248818.678607 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248849.039894 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248849.040024 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248849.040079 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248859.959613 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107248859.959735 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107248859.960498 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107248859.960550 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107248879.400552 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248879.400678 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248879.400732 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248909.761338 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248909.761479 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248909.761537 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248920.061583 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107248920.061705 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107248920.062472 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107248920.062525 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107248940.122556 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248940.122697 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248940.122751 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248970.483540 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248970.483669 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248970.483723 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248980.223600 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107248980.223719 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107248980.224483 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107248980.224536 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249000.844582 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249000.844711 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249000.844765 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249031.205764 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249031.205990 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249031.206047 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249040.295520 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249040.295643 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249040.296405 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249040.296457 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249061.566458 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249061.566586 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249061.566640 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249091.927910 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249091.928037 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249091.928091 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249100.327467 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249100.327593 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249100.328494 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249100.328547 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249122.288543 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249122.288671 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249122.288724 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249152.649685 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249152.649816 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249152.649869 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249160.509467 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249160.509615 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249160.510802 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249160.510855 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249183.011765 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249183.011895 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249183.011948 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249213.371426 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249213.371565 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249213.371622 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249220.551434 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249220.551563 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249220.552329 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249220.552381 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249243.732724 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249243.732852 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249243.732906 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249274.093649 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249274.093780 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249274.093833 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249280.663427 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249280.663550 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249280.664313 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249280.664365 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249304.454704 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249304.454833 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249304.454886 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249334.815726 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249334.815858 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249334.815912 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249340.825357 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249340.825488 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249340.826289 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249340.826342 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249365.177542 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249365.177669 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249365.177723 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249395.541404 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249395.541529 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249395.541582 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249482.760126 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249482.760259 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249482.760989 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249482.761042 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249521.879344 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249521.879842 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249521.879913 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249542.731983 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249542.732513 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249542.733591 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249542.733644 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249552.232878 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249552.233293 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249552.233356 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249582.593375 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249582.594022 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249582.594304 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249602.934015 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249602.935138 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249602.936242 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249602.936310 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249612.954767 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249612.954976 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249612.955162 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249643.315410 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249643.315971 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249643.316213 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249662.938231 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249662.938636 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249662.939500 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249662.939552 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249673.676574 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249673.677044 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249673.677282 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249704.037945 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249704.038370 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249704.038433 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249723.107946 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249723.108405 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249723.109464 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249723.109518 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249734.398557 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249734.399061 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249734.399424 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249764.760077 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249764.760499 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249764.760562 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249783.149953 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249783.150509 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249783.151530 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249783.151610 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249795.120517 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249795.121115 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249795.121470 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249825.481800 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249825.482123 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249825.482265 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249843.301904 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249843.303003 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249843.304400 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249843.304486 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249855.842709 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249855.843038 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249855.843176 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249886.203512 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249886.203987 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249886.204214 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249903.433833 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249903.434091 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249903.435239 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249903.435292 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249916.564719 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249916.565133 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249916.565277 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249946.925416 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249946.925938 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249946.926367 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249963.525789 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249963.526251 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249963.527498 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249963.527562 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249977.286716 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249977.286985 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249977.287134 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250007.647650 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250007.648010 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250007.648158 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250023.557752 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107250023.558227 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107250023.559250 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107250023.559334 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107250038.008626 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250038.008972 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250038.009117 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250068.369715 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250068.370110 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250068.370631 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250083.689727 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107250083.690303 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107250083.691188 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107250083.691300 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107250098.730564 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250098.732151 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250098.732322 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250129.092925 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250129.093340 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250129.093403 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250143.761756 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107250143.762207 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107250143.763278 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107250143.763355 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107250159.453836 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250159.454250 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250159.454313 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250189.813551 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250189.814359 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250189.814797 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250203.923674 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107250203.924112 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107250203.925109 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107250203.925196 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107250220.176334 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250220.176748 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250220.176811 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250250.535671 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250250.536188 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250250.536510 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250263.945671 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107250263.945967 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107250263.947065 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107250263.947151 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107250280.896680 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250280.897147 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250280.897565 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250311.257655 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250311.258113 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250311.258344 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250324.067765 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107250324.068159 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107250324.068986 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107250324.069111 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107248423.987624 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248423.987754 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248423.987809 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248439.235755 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107248439.235871 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107248439.236632 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107248439.236684 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107248454.346566 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248454.346701 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248454.346755 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248484.708180 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248484.708309 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248484.708362 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248499.377732 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107248499.377855 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107248499.378618 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107248499.378670 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107248515.068667 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248515.068795 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248515.068848 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248545.429750 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248545.429879 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248545.429933 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248559.510318 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107248559.510382 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107248559.511135 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107248559.511187 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107248575.790604 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248575.790728 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248575.790780 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248606.151589 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248606.151717 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248606.151769 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248619.602250 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107248619.602314 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107248619.603067 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107248619.603119 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107248636.512734 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248636.512861 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248636.512915 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248666.873517 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248666.873740 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248666.873796 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248679.704182 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107248679.704244 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107248679.704995 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107248679.705048 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107248697.234524 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248697.234653 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248697.234708 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248727.595687 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248727.595817 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248727.595870 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248739.755755 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107248739.755880 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107248739.756771 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107248739.756824 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107248757.956408 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248757.956542 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248757.956595 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248788.317656 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248788.317784 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248788.317838 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248799.887618 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107248799.887747 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107248799.888510 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107248799.888563 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107248818.678404 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248818.678542 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248818.678607 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248849.039894 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248849.040024 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248849.040079 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248859.959613 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107248859.959735 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107248859.960498 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107248859.960550 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107248879.400552 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248879.400678 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248879.400732 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248909.761338 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248909.761479 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248909.761537 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248920.061583 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107248920.061705 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107248920.062472 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107248920.062525 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107248940.122556 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248940.122697 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248940.122751 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248970.483540 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107248970.483669 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107248970.483723 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107248980.223600 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107248980.223719 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107248980.224483 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107248980.224536 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249000.844582 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249000.844711 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249000.844765 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249031.205764 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249031.205990 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249031.206047 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249040.295520 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249040.295643 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249040.296405 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249040.296457 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249061.566458 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249061.566586 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249061.566640 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249091.927910 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249091.928037 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249091.928091 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249100.327467 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249100.327593 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249100.328494 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249100.328547 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249122.288543 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249122.288671 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249122.288724 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249152.649685 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249152.649816 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249152.649869 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249160.509467 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249160.509615 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249160.510802 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249160.510855 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249183.011765 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249183.011895 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249183.011948 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249213.371426 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249213.371565 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249213.371622 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249220.551434 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249220.551563 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249220.552329 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249220.552381 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249243.732724 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249243.732852 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249243.732906 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249274.093649 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249274.093780 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249274.093833 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249280.663427 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249280.663550 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249280.664313 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249280.664365 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249304.454704 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249304.454833 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249304.454886 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249334.815726 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249334.815858 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249334.815912 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249340.825357 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249340.825488 example.yahoo.com 28555 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249340.826289 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249340.826342 example.yahoo.com 28555 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249365.177542 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249365.177669 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249365.177723 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249395.541404 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249395.541529 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249395.541582 example.yahoo.com 28577 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249482.760126 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249482.760259 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249482.760989 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249482.761042 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249521.879344 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249521.879842 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249521.879913 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249542.731983 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249542.732513 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249542.733591 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249542.733644 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249552.232878 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249552.233293 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249552.233356 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249582.593375 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249582.594022 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249582.594304 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249602.934015 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249602.935138 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249602.936242 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249602.936310 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249612.954767 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249612.954976 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249612.955162 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249643.315410 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249643.315971 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249643.316213 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249662.938231 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249662.938636 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249662.939500 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249662.939552 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249673.676574 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249673.677044 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249673.677282 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249704.037945 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249704.038370 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249704.038433 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249723.107946 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249723.108405 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249723.109464 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249723.109518 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249734.398557 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249734.399061 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249734.399424 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249764.760077 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249764.760499 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249764.760562 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249783.149953 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249783.150509 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249783.151530 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249783.151610 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249795.120517 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249795.121115 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249795.121470 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249825.481800 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249825.482123 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249825.482265 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249843.301904 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249843.303003 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249843.304400 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249843.304486 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249855.842709 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249855.843038 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249855.843176 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249886.203512 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249886.203987 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249886.204214 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249903.433833 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249903.434091 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249903.435239 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249903.435292 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249916.564719 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249916.565133 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249916.565277 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249946.925416 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249946.925938 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249946.926367 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107249963.525789 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107249963.526251 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107249963.527498 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107249963.527562 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107249977.286716 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107249977.286985 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107249977.287134 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250007.647650 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250007.648010 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250007.648158 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250023.557752 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107250023.558227 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107250023.559250 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107250023.559334 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107250038.008626 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250038.008972 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250038.009117 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250068.369715 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250068.370110 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250068.370631 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250083.689727 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107250083.690303 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107250083.691188 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107250083.691300 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107250098.730564 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250098.732151 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250098.732322 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250129.092925 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250129.093340 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250129.093403 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250143.761756 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107250143.762207 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107250143.763278 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107250143.763355 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107250159.453836 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250159.454250 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250159.454313 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250189.813551 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250189.814359 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250189.814797 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250203.923674 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107250203.924112 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107250203.925109 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107250203.925196 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107250220.176334 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250220.176748 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250220.176811 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250250.535671 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250250.536188 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250250.536510 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250263.945671 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107250263.945967 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107250263.947065 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107250263.947151 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107250280.896680 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250280.897147 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250280.897565 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250311.257655 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250311.258113 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250311.258344 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250324.067765 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107250324.068159 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107250324.068986 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107250324.069111 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107250341.618469 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250341.619001 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250341.619367 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250371.979550 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250371.980003 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250371.980254 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250384.209615 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107250384.210153 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107250384.211269 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107250384.211322 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107250402.340723 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250402.341145 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250402.341208 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250432.701722 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250432.702052 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250432.702193 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250444.241654 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107250444.242282 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107250444.243410 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107250444.243524 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107250463.062779 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250463.063193 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250463.063257 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250493.423518 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250493.423869 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250493.424011 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250504.433587 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107250504.434091 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107250504.435178 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107250504.435231 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107250523.791832 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250523.791966 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250523.792019 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250554.145291 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250554.145429 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250554.145494 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250564.525521 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107250564.525632 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107250564.526387 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107250564.526439 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107250584.506801 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250584.506957 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250584.507011 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250614.868677 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250614.868807 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250614.868861 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250624.567617 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107250624.567734 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107250624.568485 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107250624.568536 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107250645.229659 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250645.229812 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250645.229866 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250675.589502 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250675.589644 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250675.589708 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250684.729465 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107250684.729580 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107250684.730461 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107250684.730512 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107250705.950505 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250705.950692 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250705.950769 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250736.311593 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250736.311734 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250736.311798 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250744.761494 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107250744.761626 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107250744.762381 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107250744.762433 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107250766.672522 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250766.672708 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250766.672763 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250797.034486 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250797.034617 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250797.034670 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250804.863485 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107250804.863613 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107250804.864360 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107250804.864411 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107250827.395696 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250827.395823 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250827.395876 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250857.756404 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250857.756533 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250857.756585 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250865.035459 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107250865.035581 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107250865.036337 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107250865.036388 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107250888.116534 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250888.116674 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250888.116737 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250918.479148 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250918.479277 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250918.479332 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250925.137420 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107250925.137544 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107250925.138351 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107250925.138403 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107250948.838645 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250948.838779 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250948.838836 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250979.199468 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107250979.199645 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107250979.199705 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107250985.130997 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107250985.131117 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107250985.131975 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107250985.132027 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107251009.560525 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107251009.560664 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107251009.560727 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107251039.921739 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107251039.921872 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107251039.921926 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107251045.311481 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107251045.311598 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107251045.312351 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107251045.312403 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107251070.282709 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107251070.282849 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107251070.282918 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107251100.643735 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107251100.643875 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107251100.643928 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107251105.403383 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107251105.403514 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107251105.404268 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107251105.404320 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107251131.004511 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107251131.004656 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107251131.004753 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107251161.365529 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107251161.365664 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107251161.365721 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107251165.455342 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107251165.455454 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107251165.456208 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107251165.456260 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107251191.726752 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107251191.726890 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107251191.726957 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107251222.087961 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107251222.088092 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107251222.088146 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107251225.587446 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107251225.587559 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107251225.588311 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107251225.588363 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107251252.448823 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107251252.448959 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107251252.449014 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107251282.809626 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107251282.809768 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107251282.809831 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107251285.629323 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107251285.629447 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107251285.630309 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107251285.630361 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107251313.170437 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107251313.170575 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107251313.170631 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107251343.531690 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107251343.531826 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107251343.531880 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107251345.811348 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107251345.811464 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107251345.812220 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107251345.812272 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107251373.892751 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107251373.892890 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107251373.892954 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107251404.253471 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107251404.253618 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107251404.253675 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107251405.923299 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107251405.923418 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107251405.924170 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107251405.924221 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107251434.614618 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107251434.614759 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107251434.614823 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107251464.975470 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107251464.975607 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107251464.975662 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107251466.005315 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107251466.005448 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107251466.006208 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107251466.006260 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107251495.336518 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107251495.336658 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107251495.336721 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107251525.697793 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107251525.697922 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107251525.697975 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 -1107251526.047229 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="queued" value=0 -1107251526.047353 example.yahoo.com 59768 vsm fsearch.queryperf event value/1 name="active" value=0 -1107251526.048109 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.1st.latency.ms.max" value=0 -1107251526.048161 example.yahoo.com 59768 vsm fsearch.vsm.vsmmanager event value/1 name="chunk.all.latency.ms.max" value=0 -1107251556.058595 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numcollections" value=0 -1107251556.058737 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numdocuments" value=0 -1107251556.058848 example.yahoo.com 59791 storage storageserver.collection-man event value/1 name="numbytes" value=0 diff --git a/logserver/src/test/java/com/yahoo/logserver/filter/test/LogFilterManagerTestCase.java b/logserver/src/test/java/com/yahoo/logserver/filter/test/LogFilterManagerTestCase.java index c8fad351c28..a88a9b9646e 100644 --- a/logserver/src/test/java/com/yahoo/logserver/filter/test/LogFilterManagerTestCase.java +++ b/logserver/src/test/java/com/yahoo/logserver/filter/test/LogFilterManagerTestCase.java @@ -1,17 +1,15 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.logserver.filter.test; +import com.yahoo.logserver.filter.LevelFilter; import com.yahoo.logserver.filter.LogFilter; import com.yahoo.logserver.filter.LogFilterManager; -import com.yahoo.logserver.filter.LevelFilter; -import com.yahoo.logserver.filter.MetricsFilter; -import com.yahoo.logserver.filter.NoMetricsFilter; -import com.yahoo.logserver.filter.NullFilter; import com.yahoo.logserver.filter.MuteFilter; +import com.yahoo.logserver.filter.NullFilter; +import org.junit.Test; -import org.junit.*; - -import static org.junit.Assert.*; +import static org.junit.Assert.assertNotNull; +import static org.junit.Assert.assertTrue; public class LogFilterManagerTestCase { @@ -23,15 +21,6 @@ public class LogFilterManagerTestCase { assertNotNull(f); assertTrue(f instanceof LevelFilter); - f = LogFilterManager.getLogFilter("system.metricsevents"); - assertNotNull(f); - assertTrue(f instanceof MetricsFilter); - - f = LogFilterManager.getLogFilter("system.nometricsevents"); - assertNotNull(f); - assertTrue(f instanceof NoMetricsFilter); - - f = LogFilterManager.getLogFilter("system.all"); assertNotNull(f); assertTrue(f instanceof NullFilter); diff --git a/logserver/src/test/java/com/yahoo/logserver/filter/test/MetricsFilterTestCase.java b/logserver/src/test/java/com/yahoo/logserver/filter/test/MetricsFilterTestCase.java deleted file mode 100644 index c04e44e474b..00000000000 --- a/logserver/src/test/java/com/yahoo/logserver/filter/test/MetricsFilterTestCase.java +++ /dev/null @@ -1,43 +0,0 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -package com.yahoo.logserver.filter.test; - -import java.io.BufferedReader; -import java.io.FileReader; -import java.io.IOException; - -import com.yahoo.log.event.Event; -import com.yahoo.log.event.MalformedEventException; -import com.yahoo.log.InvalidLogFormatException; -import com.yahoo.log.LogMessage; -import com.yahoo.logserver.filter.MetricsFilter; - -import org.junit.*; - -import static org.junit.Assert.*; - -public class MetricsFilterTestCase { - - @Test - public void testValueEvents() throws InvalidLogFormatException, IOException { - MetricsFilter filter = new MetricsFilter(); - String filename = "src/test/files/value-events.txt"; - BufferedReader br = new BufferedReader(new FileReader(filename)); - for (String line = br.readLine(); line != null; line = br.readLine()) { - LogMessage m = LogMessage.parseNativeFormat(line); - assertNotNull(m); - try { - Event event = m.getEvent(); - assertNotNull(event); - } catch (MalformedEventException e) { - fail(); - } - - if (filter.isLoggable(m)) { - assertTrue(true); - } else { - fail(); - } - } - - } -} diff --git a/logserver/src/test/java/com/yahoo/logserver/filter/test/NoMetricsFilterTestCase.java b/logserver/src/test/java/com/yahoo/logserver/filter/test/NoMetricsFilterTestCase.java deleted file mode 100644 index f8dcc294ce7..00000000000 --- a/logserver/src/test/java/com/yahoo/logserver/filter/test/NoMetricsFilterTestCase.java +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -package com.yahoo.logserver.filter.test; - -import java.io.BufferedReader; -import java.io.FileReader; -import java.io.IOException; - -import com.yahoo.log.event.Event; -import com.yahoo.log.event.MalformedEventException; -import com.yahoo.log.InvalidLogFormatException; -import com.yahoo.log.LogMessage; -import com.yahoo.logserver.filter.MetricsFilter; -import com.yahoo.logserver.filter.NoMetricsFilter; - -import org.junit.*; - -import static org.junit.Assert.*; - -/** - * Ensure that the NoMetricsFilter does the opposite of MetricsFilter - */ -public class NoMetricsFilterTestCase { - - @Test - public void testValueEvents() throws InvalidLogFormatException, IOException { - NoMetricsFilter filter = new NoMetricsFilter(); - MetricsFilter metricsFilter = new MetricsFilter(); - - String filename = "src/test/files/value-events.txt"; - BufferedReader br = new BufferedReader(new FileReader(filename)); - for (String line = br.readLine(); line != null; line = br.readLine()) { - LogMessage m = LogMessage.parseNativeFormat(line); - assertNotNull(m); - - try { - Event event = m.getEvent(); - assertNotNull(event); - } catch (MalformedEventException e) { - fail(); - } - - if (filter.isLoggable(m)) { - fail(); - } else { - assertTrue(true); - } - - - if (metricsFilter.isLoggable(m)) { - assertTrue(true); - } else { - fail(); - } - } - } -} diff --git a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/task/util/fs/ContainerPath.java b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/task/util/fs/ContainerPath.java index 4f12c9439f2..dfeb3d7b3ee 100644 --- a/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/task/util/fs/ContainerPath.java +++ b/node-admin/src/main/java/com/yahoo/vespa/hosted/node/admin/task/util/fs/ContainerPath.java @@ -44,7 +44,7 @@ public class ContainerPath implements Path { public Path pathOnHost() { return pathOnHost; } public String pathInContainer() { return '/' + String.join("/", parts); } public ContainerPath withUser(UnixUser user) { return new ContainerPath(containerFs, pathOnHost, parts, user); } - UnixUser user() { return user; } + public UnixUser user() { return user; } @Override public ContainerFileSystem getFileSystem() { diff --git a/searchcore/src/vespa/searchcore/proton/matching/match_master.cpp b/searchcore/src/vespa/searchcore/proton/matching/match_master.cpp index 827ff4b5aca..faf10e46674 100644 --- a/searchcore/src/vespa/searchcore/proton/matching/match_master.cpp +++ b/searchcore/src/vespa/searchcore/proton/matching/match_master.cpp @@ -60,7 +60,8 @@ createScheduler(uint32_t numThreads, uint32_t numSearchPartitions, uint32_t numD return std::make_unique<TaskDocidRangeScheduler>(numThreads, numSearchPartitions, numDocs); } -auto make_reply(const MatchToolsFactory &mtf, ResultProcessor &processor, ThreadBundle &bundle, auto full_result) { +template <class FullResult> +auto make_reply(const MatchToolsFactory &mtf, ResultProcessor &processor, ThreadBundle &bundle, FullResult full_result) { if (mtf.has_match_features()) { auto docs = processor.extract_docid_ordering(*full_result); auto reply = processor.makeReply(std::move(std::move(full_result))); diff --git a/statistics/src/main/java/com/yahoo/statistics/Axis.java b/statistics/src/main/java/com/yahoo/statistics/Axis.java index f0a5f017984..f0daff92d00 100644 --- a/statistics/src/main/java/com/yahoo/statistics/Axis.java +++ b/statistics/src/main/java/com/yahoo/statistics/Axis.java @@ -10,6 +10,7 @@ import java.util.Arrays; * * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a> */ +@Deprecated class Axis { private final double[] limits; private final String name; diff --git a/statistics/src/main/java/com/yahoo/statistics/Bucket.java b/statistics/src/main/java/com/yahoo/statistics/Bucket.java index 6977afaac8c..fd69f202d2b 100644 --- a/statistics/src/main/java/com/yahoo/statistics/Bucket.java +++ b/statistics/src/main/java/com/yahoo/statistics/Bucket.java @@ -9,6 +9,7 @@ import java.util.List; * * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a> */ +@Deprecated interface Bucket { void put(double[] value, int dim); void reset(); diff --git a/statistics/src/main/java/com/yahoo/statistics/Callback.java b/statistics/src/main/java/com/yahoo/statistics/Callback.java index 4bb332c99e4..fad86d38fd7 100644 --- a/statistics/src/main/java/com/yahoo/statistics/Callback.java +++ b/statistics/src/main/java/com/yahoo/statistics/Callback.java @@ -11,6 +11,7 @@ package com.yahoo.statistics; * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a> * @since 5.1.4 */ +@Deprecated public interface Callback { /** * Invoked each logging cycle right before the events for a Handle are diff --git a/statistics/src/main/java/com/yahoo/statistics/Counter.java b/statistics/src/main/java/com/yahoo/statistics/Counter.java index f4b477636aa..1425c2a4375 100644 --- a/statistics/src/main/java/com/yahoo/statistics/Counter.java +++ b/statistics/src/main/java/com/yahoo/statistics/Counter.java @@ -1,10 +1,8 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.statistics; - import java.util.concurrent.atomic.AtomicLong; -import com.yahoo.log.event.Event; import com.yahoo.container.StatisticsConfig; @@ -13,6 +11,7 @@ import com.yahoo.container.StatisticsConfig; * * @author Steinar Knutsen */ +@Deprecated public class Counter extends Handle { // The current value of this counter private AtomicLong current = new AtomicLong(0L); @@ -165,16 +164,10 @@ public class Counter extends Handle { */ @Override public void runHandle() { - String name = getName(); - long lastCurrent; boolean resetState = getResetCounter(); if (resetState) { - lastCurrent = current.getAndSet(0L); - Event.value(name, lastCurrent); - } else { - lastCurrent = current.get(); - Event.count(name, lastCurrent); + current.set(0L); } } diff --git a/statistics/src/main/java/com/yahoo/statistics/CounterGroup.java b/statistics/src/main/java/com/yahoo/statistics/CounterGroup.java index 7e0258b3896..39d8ad19f29 100644 --- a/statistics/src/main/java/com/yahoo/statistics/CounterGroup.java +++ b/statistics/src/main/java/com/yahoo/statistics/CounterGroup.java @@ -15,6 +15,7 @@ import java.util.Iterator; * * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a> */ +@Deprecated public class CounterGroup extends Group { private final boolean resetCounter; diff --git a/statistics/src/main/java/com/yahoo/statistics/CounterProxy.java b/statistics/src/main/java/com/yahoo/statistics/CounterProxy.java index 11db94673ea..da8a029982a 100644 --- a/statistics/src/main/java/com/yahoo/statistics/CounterProxy.java +++ b/statistics/src/main/java/com/yahoo/statistics/CounterProxy.java @@ -8,6 +8,7 @@ package com.yahoo.statistics; * * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a> */ +@Deprecated class CounterProxy extends Proxy { private long raw; private boolean hasRaw = false; diff --git a/statistics/src/main/java/com/yahoo/statistics/Group.java b/statistics/src/main/java/com/yahoo/statistics/Group.java index 7b0c1823dbe..2935521b1e0 100644 --- a/statistics/src/main/java/com/yahoo/statistics/Group.java +++ b/statistics/src/main/java/com/yahoo/statistics/Group.java @@ -7,6 +7,7 @@ package com.yahoo.statistics; * * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a> */ +@Deprecated abstract class Group extends Handle { Group(String name, Statistics manager, Callback parametrizedCallback) { super(name, manager, parametrizedCallback); diff --git a/statistics/src/main/java/com/yahoo/statistics/Handle.java b/statistics/src/main/java/com/yahoo/statistics/Handle.java index 40491241137..d1ad0e26f40 100644 --- a/statistics/src/main/java/com/yahoo/statistics/Handle.java +++ b/statistics/src/main/java/com/yahoo/statistics/Handle.java @@ -1,15 +1,14 @@ // Copyright Yahoo. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.statistics; - import java.util.TimerTask; - /** * Base class for the interface to the statistics framework. * * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a> */ +@Deprecated public abstract class Handle { private TimerTask task; diff --git a/statistics/src/main/java/com/yahoo/statistics/Histogram.java b/statistics/src/main/java/com/yahoo/statistics/Histogram.java index df529015d88..98330e80efc 100644 --- a/statistics/src/main/java/com/yahoo/statistics/Histogram.java +++ b/statistics/src/main/java/com/yahoo/statistics/Histogram.java @@ -8,12 +8,12 @@ import java.util.Iterator; import java.util.List; import java.util.ArrayList; - /** * A set of sums or other histograms. * * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a> */ +@Deprecated public class Histogram implements Bucket { // The upper and lower limit for the bucket in another histogram // this histogram represents. The "outermost" histogram in a diff --git a/statistics/src/main/java/com/yahoo/statistics/HistogramType.java b/statistics/src/main/java/com/yahoo/statistics/HistogramType.java index fe6b9a3341b..cc7ca04dbbf 100644 --- a/statistics/src/main/java/com/yahoo/statistics/HistogramType.java +++ b/statistics/src/main/java/com/yahoo/statistics/HistogramType.java @@ -8,6 +8,7 @@ package com.yahoo.statistics; * * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a> */ +@Deprecated public final class HistogramType { private final String representation; diff --git a/statistics/src/main/java/com/yahoo/statistics/Limits.java b/statistics/src/main/java/com/yahoo/statistics/Limits.java index 2c6d1cb3119..fc79fd00d19 100644 --- a/statistics/src/main/java/com/yahoo/statistics/Limits.java +++ b/statistics/src/main/java/com/yahoo/statistics/Limits.java @@ -12,6 +12,7 @@ import java.util.ArrayList; * * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a> */ +@Deprecated public class Limits { private final List<Axis> axes = new ArrayList<>(1); private boolean frozen = false; diff --git a/statistics/src/main/java/com/yahoo/statistics/Proxy.java b/statistics/src/main/java/com/yahoo/statistics/Proxy.java index 5d656897f7b..c4146f4dbf8 100644 --- a/statistics/src/main/java/com/yahoo/statistics/Proxy.java +++ b/statistics/src/main/java/com/yahoo/statistics/Proxy.java @@ -8,6 +8,7 @@ package com.yahoo.statistics; * * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a> */ +@Deprecated abstract class Proxy { private long timestamp; private String name; diff --git a/statistics/src/main/java/com/yahoo/statistics/SampleDirectory.java b/statistics/src/main/java/com/yahoo/statistics/SampleDirectory.java index 520fd88a042..bac08fe17b6 100644 --- a/statistics/src/main/java/com/yahoo/statistics/SampleDirectory.java +++ b/statistics/src/main/java/com/yahoo/statistics/SampleDirectory.java @@ -4,13 +4,12 @@ package com.yahoo.statistics; import java.util.ArrayList; import java.util.List; -import com.yahoo.statistics.SampleSet.Sampling; - /** * Book-keeping class to know which SampleSet instances have unlogged data. * * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a> */ +@Deprecated final class SampleDirectory { private final Object directoryLock = new Object(); private List<SampleSet> directory = new ArrayList<>(200); @@ -27,11 +26,11 @@ final class SampleDirectory { * generation. This does the memory barrier two-step for the * client. */ - Sampling[] fetchValues() { - Sampling[] copyToReturn; + SampleSet.Sampling[] fetchValues() { + SampleSet.Sampling[] copyToReturn; synchronized (directoryLock) { List<SampleSet> tmpDir = directory; - copyToReturn = new Sampling[tmpDir.size()]; + copyToReturn = new SampleSet.Sampling[tmpDir.size()]; List<SampleSet> newDir = new ArrayList<>(200); for (int i = 0; i < copyToReturn.length; ++i) { copyToReturn[i] = tmpDir.get(i).getAndReset(); @@ -45,10 +44,10 @@ final class SampleDirectory { * Return a view of the current generation of data. This does the memory * barrier two-step for the client. */ - Sampling[] viewValues() { - Sampling[] copy; + SampleSet.Sampling[] viewValues() { + SampleSet.Sampling[] copy; synchronized (directoryLock) { - copy = new Sampling[directory.size()]; + copy = new SampleSet.Sampling[directory.size()]; for (int i = 0; i < copy.length; ++i) { copy[i] = directory.get(i).values; } diff --git a/statistics/src/main/java/com/yahoo/statistics/SampleSet.java b/statistics/src/main/java/com/yahoo/statistics/SampleSet.java index fa71c8842ed..768ae1433ea 100644 --- a/statistics/src/main/java/com/yahoo/statistics/SampleSet.java +++ b/statistics/src/main/java/com/yahoo/statistics/SampleSet.java @@ -8,6 +8,7 @@ package com.yahoo.statistics; * * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a> */ +@Deprecated final class SampleSet { Sampling values; final Limits histogramLimits; diff --git a/statistics/src/main/java/com/yahoo/statistics/Statistics.java b/statistics/src/main/java/com/yahoo/statistics/Statistics.java index d261e2d9af3..92d320e0647 100644 --- a/statistics/src/main/java/com/yahoo/statistics/Statistics.java +++ b/statistics/src/main/java/com/yahoo/statistics/Statistics.java @@ -8,7 +8,9 @@ import com.yahoo.container.StatisticsConfig; * * @author steinar * @author Tony Vaagenes + * @deprecated Will be removed on Vespa 8. If required by a method, there exists an alternative to be used instead. */ +@Deprecated public interface Statistics { /** * Add a new handle to be scheduled for periodic logging. If a handle diff --git a/statistics/src/main/java/com/yahoo/statistics/StatisticsImpl.java b/statistics/src/main/java/com/yahoo/statistics/StatisticsImpl.java index 3fb0693648f..f3a0b23a551 100644 --- a/statistics/src/main/java/com/yahoo/statistics/StatisticsImpl.java +++ b/statistics/src/main/java/com/yahoo/statistics/StatisticsImpl.java @@ -21,6 +21,7 @@ import com.yahoo.container.StatisticsConfig; * * @author Steinar Knutsen */ +@SuppressWarnings("deprecation") public final class StatisticsImpl extends AbstractComponent implements Statistics { private final Timer worker; diff --git a/statistics/src/main/java/com/yahoo/statistics/Sum.java b/statistics/src/main/java/com/yahoo/statistics/Sum.java index 534f12f9b5c..5661e82cf1b 100644 --- a/statistics/src/main/java/com/yahoo/statistics/Sum.java +++ b/statistics/src/main/java/com/yahoo/statistics/Sum.java @@ -10,6 +10,7 @@ import java.util.List; * * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a> */ +@Deprecated class Sum implements Bucket { private long sum = 0L; private double lower; diff --git a/statistics/src/main/java/com/yahoo/statistics/Value.java b/statistics/src/main/java/com/yahoo/statistics/Value.java index fa4b7db0da2..9b41f526f13 100644 --- a/statistics/src/main/java/com/yahoo/statistics/Value.java +++ b/statistics/src/main/java/com/yahoo/statistics/Value.java @@ -8,8 +8,6 @@ import java.util.logging.Logger; import com.yahoo.container.StatisticsConfig; import com.yahoo.container.StatisticsConfig.Values.Operations; import java.util.logging.Level; -import com.yahoo.log.event.Event; -import com.yahoo.statistics.SampleSet.Sampling; /** * A statistical variable, typically representing a sampling of an @@ -17,6 +15,7 @@ import com.yahoo.statistics.SampleSet.Sampling; * * @author Steinar Knutsen */ +@Deprecated public class Value extends Handle { // For accumulated values, SampleSet instances are mem barriers between {n @@ -47,9 +46,7 @@ public class Value extends Handle { private final boolean logHistogram; private final Limits histogram; - private final boolean nameExtension; final HistogramType histogramId; - private final char appendChar; private static final Logger log = Logger.getLogger(Value.class.getName()); static final String HISTOGRAM_TYPE_WARNING = "Histogram types other than REGULAR currently not supported." @@ -354,7 +351,6 @@ public class Value extends Handle { this.logRaw = isTrue(parameters.logRaw); this.logSum = isTrue(parameters.logSum); this.logInsertions = isTrue(parameters.logInsertions); - this.nameExtension = isTrue(parameters.nameExtension); if (logHistogram) { if (!parameters.limits.isFrozen()) { throw new IllegalStateException("The Limits instance must be frozen."); @@ -368,19 +364,14 @@ public class Value extends Handle { this.histogram = null; this.histogramId = HistogramType.REGULAR; } - Character appendChar = parameters.appendChar; - if (appendChar == null) { - this.appendChar = '.'; - } else { - this.appendChar = appendChar.charValue(); - } + if (parameters.register) { manager.register(this); } } private static boolean isTrue(Boolean b) { - return b != null && b.booleanValue(); + return b != null && b; } /** @@ -539,10 +530,10 @@ public class Value extends Handle { * Get mean value since last reset. */ public double getMean() { - Sampling[] values = directory.viewValues(); + SampleSet.Sampling[] values = directory.viewValues(); long insertions = 0L; double sum = 0.0d; - for (Sampling x : values) { + for (var x : values) { insertions += x.insertions; sum += x.sum; } @@ -556,10 +547,10 @@ public class Value extends Handle { * Get minimal value logged since last reset. */ public double getMin() { - Sampling[] values = directory.viewValues(); + SampleSet.Sampling[] values = directory.viewValues(); long insertions = 0L; double min = 0.0d; - for (Sampling x : values) { + for (var x : values) { if (x.insertions == 0) { continue; } @@ -577,10 +568,10 @@ public class Value extends Handle { * Get maximum value logged since last reset. */ public double getMax() { - Sampling[] values = directory.viewValues(); + SampleSet.Sampling[] values = directory.viewValues(); long insertions = 0L; double max = 0.0d; - for (Sampling x : values) { + for (var x : values) { if (x.insertions == 0) { continue; } @@ -598,9 +589,9 @@ public class Value extends Handle { if (histogram == null) { return null; } else { - Sampling[] values = directory.viewValues(); + SampleSet.Sampling[] values = directory.viewValues(); Histogram merged = new Histogram(histogram); - for (Sampling s : values) { + for (var s : values) { merged.merge(s.histogram); } return merged; @@ -632,77 +623,7 @@ public class Value extends Handle { */ @Override public void runHandle() { - String rawImage = null; - String meanImage = null; - String minImage = null; - String maxImage = null; - String sumImage = null; - String insertionsImage = null; - String histImage = null; - String lastHist = null; - String histType = null; - Snapshot now = getCurrentState(); - - if (nameExtension) { - if (logRaw) { - rawImage = getName(); - } - if (logMean) { - meanImage = getName() + appendChar + "mean"; - } - if (logMin) { - minImage = getName() + appendChar + "min"; - } - if (logMax) { - maxImage = getName() + appendChar + "max"; - } - if (logSum) { - sumImage = getName() + appendChar + "sum"; - } - if (logInsertions) { - insertionsImage = getName() + appendChar + "insertions"; - } - } else { - if (logRaw) { - rawImage = getName(); - } else if (logMean) { - meanImage = getName(); - } else if (logMin) { - minImage = getName(); - } else if (logMax) { - maxImage = getName(); - } else if (logSum) { - sumImage = getName(); - } else if (logInsertions) { - insertionsImage = getName(); - } - } - if (logHistogram) { - histImage = getName(); - lastHist = now.histogram.toString(); - histType = histogramId.toString(); - } - if (rawImage != null) { - Event.value(rawImage, now.raw); - } - if (meanImage != null) { - Event.value(meanImage, now.mean); - } - if (minImage != null) { - Event.value(minImage, now.min); - } - if (maxImage != null) { - Event.value(maxImage, now.max); - } - if (histImage != null) { - Event.histogram(histImage, lastHist, histType); - } - if (sumImage != null) { - Event.value(sumImage, now.sum); - } - if (insertionsImage != null) { - Event.value(insertionsImage, now.insertions); - } + getAndSetCurrentState(); } public String toString() { @@ -772,7 +693,7 @@ public class Value extends Handle { } } - private Snapshot getCurrentState() { + private Snapshot getAndSetCurrentState() { double lastInsertions = 0L; double lastMax = 0.0d; double lastMin = 0.0d; @@ -785,11 +706,11 @@ public class Value extends Handle { lastRaw = lastValue; } if (logComposite()) { - Sampling[] lastInterval = directory.fetchValues(); + SampleSet.Sampling[] lastInterval = directory.fetchValues(); if (histogram != null) { mergedHistogram = new Histogram(histogram); } - for (Sampling threadData : lastInterval) { + for (var threadData : lastInterval) { if (threadData.insertions == 0) { continue; } @@ -820,7 +741,7 @@ public class Value extends Handle { ValueProxy getProxyAndReset() { ValueProxy p = new ValueProxy(getName()); - Snapshot now = getCurrentState(); + Snapshot now = getAndSetCurrentState(); if (logRaw) { p.setRaw(now.raw); diff --git a/statistics/src/main/java/com/yahoo/statistics/ValueGroup.java b/statistics/src/main/java/com/yahoo/statistics/ValueGroup.java index 8981a75b578..e8f26e625d4 100644 --- a/statistics/src/main/java/com/yahoo/statistics/ValueGroup.java +++ b/statistics/src/main/java/com/yahoo/statistics/ValueGroup.java @@ -3,7 +3,6 @@ package com.yahoo.statistics; import com.yahoo.log.event.Event; -import com.yahoo.statistics.Value.Parameters; import java.util.Iterator; import java.util.Map; @@ -14,6 +13,7 @@ import java.util.HashMap; * * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a> */ +@Deprecated public class ValueGroup extends Group { // A map for names of subevents and Value instances private Map<String, Value> subEvents = new HashMap<>(); @@ -67,7 +67,7 @@ public class ValueGroup extends Group { } private Value getNewValue(String subName) { - Value v = Value.initializeUnregisteredValue(subName, new Parameters().setLogRaw(true)); + Value v = Value.initializeUnregisteredValue(subName, new Value.Parameters().setLogRaw(true)); subEvents.put(subName, v); return v; } diff --git a/statistics/src/main/java/com/yahoo/statistics/ValueProxy.java b/statistics/src/main/java/com/yahoo/statistics/ValueProxy.java index 77d2f45fcd6..3146dc7d2d7 100644 --- a/statistics/src/main/java/com/yahoo/statistics/ValueProxy.java +++ b/statistics/src/main/java/com/yahoo/statistics/ValueProxy.java @@ -8,6 +8,7 @@ package com.yahoo.statistics; * * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a> */ +@Deprecated class ValueProxy extends Proxy { private double raw; private boolean hasRaw = false; diff --git a/statistics/src/test/java/com/yahoo/statistics/CounterGroupTestCase.java b/statistics/src/test/java/com/yahoo/statistics/CounterGroupTestCase.java index 57a321e126f..323a4fd23c6 100644 --- a/statistics/src/test/java/com/yahoo/statistics/CounterGroupTestCase.java +++ b/statistics/src/test/java/com/yahoo/statistics/CounterGroupTestCase.java @@ -18,6 +18,7 @@ import static org.junit.Assert.assertFalse; * * @author Steinar Knutsen */ +@SuppressWarnings("deprecation") public class CounterGroupTestCase { private volatile boolean gotRecord = false; diff --git a/statistics/src/test/java/com/yahoo/statistics/CounterTestCase.java b/statistics/src/test/java/com/yahoo/statistics/CounterTestCase.java index c4dd5dd9c67..8c17fd936a0 100644 --- a/statistics/src/test/java/com/yahoo/statistics/CounterTestCase.java +++ b/statistics/src/test/java/com/yahoo/statistics/CounterTestCase.java @@ -15,7 +15,7 @@ import static org.junit.Assert.assertFalse; * * @author Steinar Knutsen */ - +@SuppressWarnings("deprecation") public class CounterTestCase { @Test diff --git a/statistics/src/test/java/com/yahoo/statistics/HistogramTestCase.java b/statistics/src/test/java/com/yahoo/statistics/HistogramTestCase.java index a15d679c77e..517de9b4ef1 100644 --- a/statistics/src/test/java/com/yahoo/statistics/HistogramTestCase.java +++ b/statistics/src/test/java/com/yahoo/statistics/HistogramTestCase.java @@ -12,7 +12,7 @@ import static org.junit.Assert.fail; * * @author Steinar Knutsen */ - +@SuppressWarnings("deprecation") public class HistogramTestCase { @Test diff --git a/statistics/src/test/java/com/yahoo/statistics/ProxyTestCase.java b/statistics/src/test/java/com/yahoo/statistics/ProxyTestCase.java index dcfdac746ad..8eaee5d8ce8 100644 --- a/statistics/src/test/java/com/yahoo/statistics/ProxyTestCase.java +++ b/statistics/src/test/java/com/yahoo/statistics/ProxyTestCase.java @@ -12,6 +12,7 @@ import org.junit.Test; * * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a> */ +@SuppressWarnings("deprecation") public class ProxyTestCase { private static final double MAX = 2.0d; private static final double MEAN = 1.0d; diff --git a/statistics/src/test/java/com/yahoo/statistics/StatisticsImplTestCase.java b/statistics/src/test/java/com/yahoo/statistics/StatisticsImplTestCase.java index f0f951610f5..1ae8725ffe2 100644 --- a/statistics/src/test/java/com/yahoo/statistics/StatisticsImplTestCase.java +++ b/statistics/src/test/java/com/yahoo/statistics/StatisticsImplTestCase.java @@ -16,6 +16,7 @@ import com.yahoo.container.StatisticsConfig; * * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a> */ +@SuppressWarnings("deprecation") public class StatisticsImplTestCase { private static class TestHandle extends Handle { diff --git a/statistics/src/test/java/com/yahoo/statistics/ValueGroupTestCase.java b/statistics/src/test/java/com/yahoo/statistics/ValueGroupTestCase.java index 35db53b3316..f9c3ee79ad7 100644 --- a/statistics/src/test/java/com/yahoo/statistics/ValueGroupTestCase.java +++ b/statistics/src/test/java/com/yahoo/statistics/ValueGroupTestCase.java @@ -18,6 +18,7 @@ import static org.junit.Assert.assertTrue; * * @author Steinar Knutsen */ +@SuppressWarnings("deprecation") public class ValueGroupTestCase { private volatile boolean gotRecord = false; diff --git a/statistics/src/test/java/com/yahoo/statistics/ValueTestCase.java b/statistics/src/test/java/com/yahoo/statistics/ValueTestCase.java index a96d684b961..91a02d90a6e 100644 --- a/statistics/src/test/java/com/yahoo/statistics/ValueTestCase.java +++ b/statistics/src/test/java/com/yahoo/statistics/ValueTestCase.java @@ -14,7 +14,6 @@ import static org.junit.Assert.assertFalse; import static org.junit.Assert.assertNull; import static org.junit.Assert.assertTrue; -import com.yahoo.statistics.Value.Parameters; import org.junit.Test; /** @@ -22,6 +21,7 @@ import org.junit.Test; * * @author Steinar Knutsen */ +@SuppressWarnings("deprecation") public class ValueTestCase { private static final double delta = 0.0000000001; @@ -46,7 +46,7 @@ public class ValueTestCase { @Test public void testMean() { - Value v = new Value("thingie", Statistics.nullImplementation, new Parameters().setLogMean(true)); + Value v = new Value("thingie", Statistics.nullImplementation, new Value.Parameters().setLogMean(true)); v.put(1.0); v.put(2.0); v.put(4.0); @@ -59,7 +59,7 @@ public class ValueTestCase { @Test public void testMin() { - Value v = new Value("thingie", Statistics.nullImplementation, new Parameters().setLogMin(true)); + Value v = new Value("thingie", Statistics.nullImplementation, new Value.Parameters().setLogMin(true)); v.put(2.0); assertTrue("Min should be 2.0", 2.0 == v.getMin()); v.put(1.0); @@ -71,7 +71,7 @@ public class ValueTestCase { @Test public void testMax() { - Value v = new Value("thingie", Statistics.nullImplementation, new Parameters().setLogMax(true)); + Value v = new Value("thingie", Statistics.nullImplementation, new Value.Parameters().setLogMax(true)); v.put(-1.0); assertTrue("Max should be -1.0", -1.0 == v.getMax()); v.put(1.0); @@ -84,7 +84,7 @@ public class ValueTestCase { @Test public void testHistogram() { - Value v = new Value("thingie", Statistics.nullImplementation, new Parameters() + Value v = new Value("thingie", Statistics.nullImplementation, new Value.Parameters() .setLogHistogram(true).setHistogramId(HistogramType.REGULAR) .setLimits(new Limits(new double[] { 0.0, 1.0, 2.0 }))); v.put(-1.0); @@ -101,7 +101,7 @@ public class ValueTestCase { Logger logger = Logger.getLogger(Value.class.getName()); boolean initUseParentHandlers = logger.getUseParentHandlers(); logger.setUseParentHandlers(false); - Value v = new Value("thingie", Statistics.nullImplementation, new Parameters() + Value v = new Value("thingie", Statistics.nullImplementation, new Value.Parameters() .setLogRaw(true).setCallback(new TrivialCallback())); v.run(); assertEquals(FIRST, v.get(), delta); @@ -190,7 +190,6 @@ public class ValueTestCase { v.put(x); assertEquals(x, v.getMean(), delta); v.run(); - assertEquals(true, h.gotRecord); logger.removeHandler(h); logger.setUseParentHandlers(initUseParentHandlers); } @@ -219,38 +218,6 @@ public class ValueTestCase { v.put(1.5d); v.put(1.5d); v.run(); - assertEquals(true, h.gotRecord); - assertEquals(true, h.gotWarning); - logger.removeHandler(h); - logger.setUseParentHandlers(initUseParentHandlers); - } - - @Test - public void testCumulativeHistogram() { - Logger logger = Logger.getLogger(Value.class.getName()); - boolean initUseParentHandlers = logger.getUseParentHandlers(); - logger.setUseParentHandlers(false); - CheckHistogram h = new CheckHistogram("(0) < 0.0 (2) < 1.0 (2) < 2.0 (0)", "REGULAR"); - logger.addHandler(h); - List<Operations.Arguments.Builder> histogram = Arrays.asList(new Operations.Arguments.Builder[] { - new Operations.Arguments.Builder().key("limits").value("0, 1, 2")}); - List<Operations.Builder> ops = Arrays.asList(new Operations.Builder[] { - new Operations.Builder().name(Operations.Name.Enum.CUMULATIVE).arguments(histogram) }); - StatisticsConfig c = new StatisticsConfig( - new StatisticsConfig.Builder() - .values(new StatisticsConfig.Values.Builder().name( - NALLE).operations(ops))); - MockStatistics m = new MockStatistics(); - m.config = c; - Value v = Value.buildValue(NALLE, m, null); - assertEquals(HistogramType.REGULAR.toString(), v.histogramId.toString()); - v.put(.5d); - v.put(.5d); - v.put(1.5d); - v.put(1.5d); - v.run(); - assertEquals(true, h.gotRecord); - assertEquals(true, h.gotWarning); logger.removeHandler(h); logger.setUseParentHandlers(initUseParentHandlers); } diff --git a/vespaclient-container-plugin/src/main/java/com/yahoo/document/restapi/resource/DocumentV1ApiHandler.java b/vespaclient-container-plugin/src/main/java/com/yahoo/document/restapi/resource/DocumentV1ApiHandler.java index 29fd419daa2..a102e8fffd4 100644 --- a/vespaclient-container-plugin/src/main/java/com/yahoo/document/restapi/resource/DocumentV1ApiHandler.java +++ b/vespaclient-container-plugin/src/main/java/com/yahoo/document/restapi/resource/DocumentV1ApiHandler.java @@ -92,7 +92,9 @@ import java.util.concurrent.ConcurrentLinkedQueue; import java.util.concurrent.Executors; import java.util.concurrent.Phaser; import java.util.concurrent.ScheduledExecutorService; +import java.util.concurrent.ScheduledFuture; import java.util.concurrent.TimeUnit; +import java.util.concurrent.atomic.AtomicBoolean; import java.util.concurrent.atomic.AtomicLong; import java.util.concurrent.atomic.AtomicReference; import java.util.concurrent.locks.Lock; @@ -112,6 +114,7 @@ import static com.yahoo.jdisc.http.HttpRequest.Method.OPTIONS; import static com.yahoo.jdisc.http.HttpRequest.Method.POST; import static com.yahoo.jdisc.http.HttpRequest.Method.PUT; import static java.util.Objects.requireNonNull; +import static java.util.concurrent.TimeUnit.MILLISECONDS; import static java.util.logging.Level.FINE; import static java.util.logging.Level.WARNING; import static java.util.stream.Collectors.joining; @@ -211,11 +214,11 @@ public class DocumentV1ApiHandler extends AbstractRequestHandler { this.dispatcher.scheduleWithFixedDelay(this::dispatchEnqueued, executorConfig.resendDelayMillis(), executorConfig.resendDelayMillis(), - TimeUnit.MILLISECONDS); + MILLISECONDS); this.visitDispatcher.scheduleWithFixedDelay(this::dispatchVisitEnqueued, executorConfig.resendDelayMillis(), executorConfig.resendDelayMillis(), - TimeUnit.MILLISECONDS); + MILLISECONDS); } // ------------------------------------------------ Requests ------------------------------------------------- @@ -233,7 +236,7 @@ public class DocumentV1ApiHandler extends AbstractRequestHandler { // Set a higher HTTP layer timeout than the document API timeout, to prefer triggering the latter. request.setTimeout( getProperty(request, TIMEOUT, timeoutMillisParser).orElse(defaultTimeout.toMillis()) + handlerTimeout.toMillis(), - TimeUnit.MILLISECONDS); + MILLISECONDS); Path requestPath = new Path(request.getUri()); for (String path : handlers.keySet()) @@ -260,7 +263,7 @@ public class DocumentV1ApiHandler extends AbstractRequestHandler { @Override public void handleTimeout(Request request, ResponseHandler responseHandler) { - timeout((HttpRequest) request, "Timeout after " + (request.getTimeout(TimeUnit.MILLISECONDS) - handlerTimeout.toMillis()) + "ms", responseHandler); + timeout((HttpRequest) request, "Timeout after " + (request.getTimeout(MILLISECONDS) - handlerTimeout.toMillis()) + "ms", responseHandler); } @Override @@ -290,10 +293,10 @@ public class DocumentV1ApiHandler extends AbstractRequestHandler { while (outstanding.get() > 0 && clock.instant().isBefore(doom)) Thread.sleep(Math.max(1, Duration.between(clock.instant(), doom).toMillis())); - if ( ! dispatcher.awaitTermination(Duration.between(clock.instant(), doom).toMillis(), TimeUnit.MILLISECONDS)) + if ( ! dispatcher.awaitTermination(Duration.between(clock.instant(), doom).toMillis(), MILLISECONDS)) dispatcher.shutdownNow(); - if ( ! visitDispatcher.awaitTermination(Duration.between(clock.instant(), doom).toMillis(), TimeUnit.MILLISECONDS)) + if ( ! visitDispatcher.awaitTermination(Duration.between(clock.instant(), doom).toMillis(), MILLISECONDS)) visitDispatcher.shutdownNow(); } catch (InterruptedException e) { @@ -1055,18 +1058,18 @@ public class DocumentV1ApiHandler extends AbstractRequestHandler { VisitorParameters parameters = parseCommonParameters(request, path, cluster); parameters.setFieldSet(getProperty(request, FIELD_SET).orElse(path.documentType().map(type -> type + ":[document]").orElse(AllFields.NAME))); parameters.setMaxTotalHits(wantedDocumentCount); - StaticThrottlePolicy throttlePolicy; + parameters.visitInconsistentBuckets(true); + long timeoutMs = Math.max(1, request.getTimeout(MILLISECONDS) - handlerTimeout.toMillis()); if (streamed) { - throttlePolicy = new DynamicThrottlePolicy().setMinWindowSize(1).setWindowSizeIncrement(1); + StaticThrottlePolicy throttlePolicy = new DynamicThrottlePolicy().setMinWindowSize(1).setWindowSizeIncrement(1); concurrency.ifPresent(throttlePolicy::setMaxPendingCount); + parameters.setThrottlePolicy(throttlePolicy); + parameters.setTimeoutMs(timeoutMs); // Ensure visitor eventually completes. } else { - throttlePolicy = new StaticThrottlePolicy().setMaxPendingCount(Math.min(100, concurrency.orElse(1))); + parameters.setThrottlePolicy(new StaticThrottlePolicy().setMaxPendingCount(Math.min(100, concurrency.orElse(1)))); + parameters.setSessionTimeoutMs(timeoutMs); } - parameters.setThrottlePolicy(throttlePolicy); - parameters.visitInconsistentBuckets(true); - parameters.setSessionTimeoutMs(Math.max(1, request.getTimeout(TimeUnit.MILLISECONDS) - handlerTimeout.toMillis())); - return parameters; } @@ -1076,7 +1079,7 @@ public class DocumentV1ApiHandler extends AbstractRequestHandler { VisitorParameters parameters = parseCommonParameters(request, path, Optional.of(requireProperty(request, CLUSTER))); parameters.setThrottlePolicy(new DynamicThrottlePolicy().setMinWindowSize(1).setWindowSizeIncrement(1)); long timeChunk = getProperty(request, TIME_CHUNK, timeoutMillisParser).orElse(60_000L); - parameters.setSessionTimeoutMs(Math.max(1, Math.min(timeChunk, request.getTimeout(TimeUnit.MILLISECONDS) - handlerTimeout.toMillis()))); + parameters.setSessionTimeoutMs(Math.max(1, Math.min(timeChunk, request.getTimeout(MILLISECONDS) - handlerTimeout.toMillis()))); return parameters; } @@ -1223,6 +1226,7 @@ public class DocumentV1ApiHandler extends AbstractRequestHandler { AtomicReference<String> error = new AtomicReference<>(); // Set if error occurs during processing of visited documents. callback.onStart(response); VisitorControlHandler controller = new VisitorControlHandler() { + final ScheduledFuture<?> abort = streaming ? visitDispatcher.schedule(this::abort, request.getTimeout(MILLISECONDS), MILLISECONDS) : null; @Override public void onDone(CompletionCode code, String message) { super.onDone(code, message); loggingException(() -> { @@ -1258,10 +1262,12 @@ public class DocumentV1ApiHandler extends AbstractRequestHandler { response.commit(status); } }); + if (abort != null) abort.cancel(false); // Avoid keeping scheduled future alive if this completes in any other fashion. visitDispatcher.execute(() -> { phaser.arriveAndAwaitAdvance(); // We may get here while dispatching thread is still putting us in the map. visits.remove(this).destroy(); }); + } }; if (parameters.getRemoteDataHandler() == null) { diff --git a/vespaclient-container-plugin/src/test/java/com/yahoo/document/restapi/resource/DocumentV1ApiTest.java b/vespaclient-container-plugin/src/test/java/com/yahoo/document/restapi/resource/DocumentV1ApiTest.java index 2452e19bfff..de907f70c19 100644 --- a/vespaclient-container-plugin/src/test/java/com/yahoo/document/restapi/resource/DocumentV1ApiTest.java +++ b/vespaclient-container-plugin/src/test/java/com/yahoo/document/restapi/resource/DocumentV1ApiTest.java @@ -257,7 +257,7 @@ public class DocumentV1ApiTest { assertEquals(1, ((StaticThrottlePolicy) parameters.getThrottlePolicy()).getMaxPendingCount()); assertEquals("[id]", parameters.getFieldSet()); assertEquals("(all the things)", parameters.getDocumentSelection()); - assertEquals(6000, parameters.getSessionTimeoutMs()); + assertEquals(6000, parameters.getTimeoutMs()); assertEquals(4, parameters.getSlices()); assertEquals(1, parameters.getSliceId()); // Put some documents in the response diff --git a/zookeeper-server/zookeeper-server-common/src/test/java/com/yahoo/vespa/zookeeper/ConfiguratorTest.java b/zookeeper-server/zookeeper-server-common/src/test/java/com/yahoo/vespa/zookeeper/ConfiguratorTest.java index d2361853436..305e7b828b1 100644 --- a/zookeeper-server/zookeeper-server-common/src/test/java/com/yahoo/vespa/zookeeper/ConfiguratorTest.java +++ b/zookeeper-server/zookeeper-server-common/src/test/java/com/yahoo/vespa/zookeeper/ConfiguratorTest.java @@ -175,18 +175,28 @@ public class ConfiguratorTest { validateConfigFile(cfgFile, expected); } + private String cipherSuites() { + // TODO: Remove when Vespa is only built with JDK 17 + int jdkVersion = Integer.parseInt(System.getProperty("java.version").split("\\.")[0]); + if (jdkVersion < 12) + return "TLS_AES_128_GCM_SHA256,TLS_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256," + + "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384"; + + return "TLS_AES_128_GCM_SHA256,TLS_AES_256_GCM_SHA384,TLS_CHACHA20_POLY1305_SHA256," + + "TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_CHACHA20_POLY1305_SHA256," + + "TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_CHACHA20_POLY1305_SHA256"; + } + private String tlsQuorumConfig() { return "ssl.quorum.context.supplier.class=com.yahoo.vespa.zookeeper.VespaSslContextProvider\n" + - "ssl.quorum.ciphersuites=TLS_AES_128_GCM_SHA256,TLS_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256," + - "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384\n" + + "ssl.quorum.ciphersuites=" + cipherSuites() + "\n" + "ssl.quorum.enabledProtocols=TLSv1.2\n" + "ssl.quorum.clientAuth=NEED\n"; } private String tlsClientServerConfig() { return "ssl.context.supplier.class=com.yahoo.vespa.zookeeper.VespaSslContextProvider\n" + - "ssl.ciphersuites=TLS_AES_128_GCM_SHA256,TLS_AES_256_GCM_SHA384,TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256," + - "TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384,TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256,TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384\n" + + "ssl.ciphersuites=" + cipherSuites() + "\n" + "ssl.enabledProtocols=TLSv1.2\n" + "ssl.clientAuth=NEED\n"; } |