diff options
Diffstat (limited to 'container-core/src/main')
21 files changed, 15 insertions, 569 deletions
diff --git a/container-core/src/main/java/com/yahoo/container/Container.java b/container-core/src/main/java/com/yahoo/container/Container.java index e84c8b340a4..031d4a26d05 100755 --- a/container-core/src/main/java/com/yahoo/container/Container.java +++ b/container-core/src/main/java/com/yahoo/container/Container.java @@ -3,13 +3,11 @@ package com.yahoo.container; import com.yahoo.component.AbstractComponent; import com.yahoo.component.provider.ComponentRegistry; -import com.yahoo.container.core.config.BundleLoader; import com.yahoo.filedistribution.fileacquirer.FileAcquirer; import com.yahoo.filedistribution.fileacquirer.FileAcquirerFactory; import com.yahoo.jdisc.handler.RequestHandler; import com.yahoo.jdisc.service.ClientProvider; import com.yahoo.jdisc.service.ServerProvider; -import com.yahoo.osgi.Osgi; import com.yahoo.vespa.config.ConfigTransformer; import com.yahoo.vespa.config.UrlDownloader; @@ -34,8 +32,6 @@ public class Container { private volatile FileAcquirer fileAcquirer; private volatile UrlDownloader urlDownloader; - private volatile BundleLoader bundleLoader; - private static Logger logger = Logger.getLogger(Container.class.getName()); // TODO: Make this final again. @@ -43,12 +39,6 @@ public class Container { public static Container get() { return instance; } - /** @deprecated do not use */ - @Deprecated // TODO: Remove - public void setOsgi(Osgi osgi) { - bundleLoader = new BundleLoader(osgi); - } - public void shutdown() { if (fileAcquirer != null) fileAcquirer.shutdown(); @@ -61,14 +51,6 @@ public class Container { return fileAcquirer; } - /** @deprecated do not use */ - @Deprecated // TODO: Remove - public BundleLoader getBundleLoader() { - if (bundleLoader == null) - bundleLoader = new BundleLoader(null); - return bundleLoader; - } - /** * Hack. For internal use only, will be removed later * 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 f7a3f49538e..cca3c5c4610 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 @@ -9,7 +9,6 @@ import com.yahoo.component.ComponentSpecification; import com.yahoo.component.provider.ComponentRegistry; import com.yahoo.concurrent.ThreadFactoryFactory; import com.yahoo.config.FileReference; -import com.yahoo.container.core.DiagnosticsConfig; import com.yahoo.container.di.ComponentDeconstructor; import com.yahoo.container.di.Container; import com.yahoo.container.di.componentgraph.core.ComponentGraph; @@ -148,9 +147,6 @@ public class HandlersConfigurerDi { protected void configure() { bind(com.yahoo.container.Container.class).toInstance(vespaContainer); bind(com.yahoo.statistics.Statistics.class).toInstance(Statistics.nullImplementation); - bind(com.yahoo.container.protect.FreezeDetector.class).toInstance( - new com.yahoo.container.protect.FreezeDetector( - new DiagnosticsConfig(new DiagnosticsConfig.Builder().disabled(true)))); bind(AccessLog.class).toInstance(new AccessLog(new ComponentRegistry<>())); bind(Executor.class).toInstance(Executors.newCachedThreadPool(ThreadFactoryFactory.getThreadFactory("HandlersConfigurerDI"))); diff --git a/container-core/src/main/java/com/yahoo/container/handler/VipStatusHandler.java b/container-core/src/main/java/com/yahoo/container/handler/VipStatusHandler.java index 60affddeb60..c8cf575dff3 100644 --- a/container-core/src/main/java/com/yahoo/container/handler/VipStatusHandler.java +++ b/container-core/src/main/java/com/yahoo/container/handler/VipStatusHandler.java @@ -38,7 +38,6 @@ public final class VipStatusHandler extends ThreadedHttpRequestHandler { private final boolean accessDisk; private final File statusFile; private final VipStatus vipStatus; - private final boolean noSearchBackendsImpliesOutOfService; private volatile boolean previouslyInRotation = true; @@ -57,7 +56,7 @@ public final class VipStatusHandler extends ThreadedHttpRequestHandler { private StatusResponse() { super(com.yahoo.jdisc.http.HttpResponse.Status.OK); // status may be overwritten below - if (noSearchBackendsImpliesOutOfService && !vipStatus.isInRotation()) { + if (vipStatus != null && ! vipStatus.isInRotation()) { searchContainerOutOfService(); } else if (accessDisk) { preSlurpFile(); @@ -179,7 +178,6 @@ public final class VipStatusHandler extends ThreadedHttpRequestHandler { super(executor, metric); this.accessDisk = vipConfig.accessdisk(); this.statusFile = new File(Defaults.getDefaults().underVespaHome(vipConfig.statusfile())); - this.noSearchBackendsImpliesOutOfService = vipConfig.noSearchBackendsImpliesOutOfService(); this.vipStatus = vipStatus; } @@ -187,9 +185,8 @@ public final class VipStatusHandler extends ThreadedHttpRequestHandler { public HttpResponse handle(HttpRequest request) { if (metric != null) metric.add(NUM_REQUESTS_METRIC, 1, null); - if (noSearchBackendsImpliesOutOfService) { + if (vipStatus != null) updateAndLogRotationState(); - } return new StatusResponse(); } diff --git a/container-core/src/main/java/com/yahoo/container/jdisc/LoggingRequestHandler.java b/container-core/src/main/java/com/yahoo/container/jdisc/LoggingRequestHandler.java index 73b56cd89f5..705092ef12e 100644 --- a/container-core/src/main/java/com/yahoo/container/jdisc/LoggingRequestHandler.java +++ b/container-core/src/main/java/com/yahoo/container/jdisc/LoggingRequestHandler.java @@ -295,7 +295,6 @@ public abstract class LoggingRequestHandler extends ThreadedHttpRequestHandler { logEntry.setRemotePort(remoteAddress.getPort()); } URI uri = AccessLogUtil.getUri(httpRequest); - setDeprecatedUri(logEntry, uri); logEntry.setRawPath(uri.getRawPath()); logEntry.setRawQuery(uri.getRawQuery()); logEntry.setUserAgent(AccessLogUtil.getUserAgentHeader(httpRequest)); @@ -307,9 +306,4 @@ public abstract class LoggingRequestHandler extends ThreadedHttpRequestHandler { } } - @SuppressWarnings("deprecation") - private static void setDeprecatedUri(AccessLogEntry logEntry, URI uri) { - logEntry.setURI(uri); - } - } diff --git a/container-core/src/main/java/com/yahoo/container/jdisc/MetricConsumerFactory.java b/container-core/src/main/java/com/yahoo/container/jdisc/MetricConsumerFactory.java index 50052bbf70c..d0cf07584e4 100644 --- a/container-core/src/main/java/com/yahoo/container/jdisc/MetricConsumerFactory.java +++ b/container-core/src/main/java/com/yahoo/container/jdisc/MetricConsumerFactory.java @@ -4,7 +4,7 @@ package com.yahoo.container.jdisc; import com.yahoo.jdisc.application.MetricConsumer; /** - * <p>This is the interface to implement if one wishes to configure a non-default <tt>MetricConsumer</tt>. Simply + * <p>This is the interface to implement if one wishes to configure a non-default <code>MetricConsumer</code>. Simply * add the implementing class as a component in your services.xml file.</p> * * @author Simon Thoresen Hult diff --git a/container-core/src/main/java/com/yahoo/container/jdisc/ThreadedHttpRequestHandler.java b/container-core/src/main/java/com/yahoo/container/jdisc/ThreadedHttpRequestHandler.java index 670c48bb339..dddde1205ca 100644 --- a/container-core/src/main/java/com/yahoo/container/jdisc/ThreadedHttpRequestHandler.java +++ b/container-core/src/main/java/com/yahoo/container/jdisc/ThreadedHttpRequestHandler.java @@ -30,7 +30,6 @@ import java.util.logging.Logger; public abstract class ThreadedHttpRequestHandler extends ThreadedRequestHandler { public static final String CONTENT_TYPE = "Content-Type"; - public static final String DATE = "Date"; // TODO: Remove on Vespa 7 private static final String RENDERING_ERRORS = "rendering_errors"; /** Logger for subclasses */ diff --git a/container-core/src/main/java/com/yahoo/container/jdisc/VespaHeaders.java b/container-core/src/main/java/com/yahoo/container/jdisc/VespaHeaders.java index 715038470b9..309405f1242 100644 --- a/container-core/src/main/java/com/yahoo/container/jdisc/VespaHeaders.java +++ b/container-core/src/main/java/com/yahoo/container/jdisc/VespaHeaders.java @@ -54,6 +54,7 @@ public final class VespaHeaders { } } + /** Returns true if this is a benchmarking request, according to headers */ public static boolean benchmarkOutput(com.yahoo.container.jdisc.HttpRequest request) { return request.getHeader(BenchmarkingHeaders.REQUEST) != null; } @@ -69,8 +70,7 @@ public final class VespaHeaders { * @param coverage The Coverage to read data from. */ public static void benchmarkOutput(HeaderFields responseHeaders, boolean benchmarkCoverage, - Timing t, HitCounts c, int errorCount, Coverage coverage) - { + Timing t, HitCounts c, int errorCount, Coverage coverage) { final long renderStartTime = System.currentTimeMillis(); if (c != null) { // Fill inn response getHeaders diff --git a/container-core/src/main/java/com/yahoo/container/protect/FreezeDetector.java b/container-core/src/main/java/com/yahoo/container/protect/FreezeDetector.java deleted file mode 100644 index 6a8a3239c17..00000000000 --- a/container-core/src/main/java/com/yahoo/container/protect/FreezeDetector.java +++ /dev/null @@ -1,57 +0,0 @@ -// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -package com.yahoo.container.protect; - -import java.util.Timer; - -import com.yahoo.component.AbstractComponent; -import com.yahoo.concurrent.ThreadLocalDirectory; -import com.yahoo.container.core.DiagnosticsConfig; - -/** - * Runs and initializes a {@link Watchdog} instance. - * - * @author Steinar Knutsen - * @deprecated this is not in use and will be removed in the next major release - */ -@Deprecated -// TODO: Remove on Vespa 7 -public class FreezeDetector extends AbstractComponent { - - private final Timer timeoutWatchdog; - private final Watchdog watchdog; - - public FreezeDetector(DiagnosticsConfig diagnosticsConfig) { - timeoutWatchdog = null; - watchdog = null; - } - - public void register(ThreadLocalDirectory<TimeoutRate, Boolean> timeouts) { - if (watchdog == null) { - return; - } - watchdog.addTimeouts(timeouts); - } - - public boolean isBreakdown() { - if (watchdog == null) { - return false; - } - return watchdog.isBreakdown(); - } - - public void unRegister(ThreadLocalDirectory<TimeoutRate, Boolean> timeouts) { - if (watchdog == null) { - return; - } - watchdog.removeTimeouts(timeouts); - } - - @Override - public void deconstruct() { - super.deconstruct(); - if (timeoutWatchdog != null) { - timeoutWatchdog.cancel(); - } - } - -} diff --git a/container-core/src/main/java/com/yahoo/container/protect/TimeoutCollector.java b/container-core/src/main/java/com/yahoo/container/protect/TimeoutCollector.java deleted file mode 100644 index e31716a292e..00000000000 --- a/container-core/src/main/java/com/yahoo/container/protect/TimeoutCollector.java +++ /dev/null @@ -1,26 +0,0 @@ -// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -package com.yahoo.container.protect; - -import com.yahoo.concurrent.ThreadLocalDirectory.Updater; - -/** - * Allocator and glue for sampling timeouts in SearchHandler. - * - * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a> - * @deprecated this is not in use and will be removed in the next major release - */ -@Deprecated -public final class TimeoutCollector implements Updater<TimeoutRate, Boolean> { - - @Override - public TimeoutRate createGenerationInstance(TimeoutRate previous) { - return new TimeoutRate(); - } - - @Override - public TimeoutRate update(TimeoutRate current, Boolean x) { - current.addQuery(x); - return current; - } - -} diff --git a/container-core/src/main/java/com/yahoo/container/protect/TimeoutRate.java b/container-core/src/main/java/com/yahoo/container/protect/TimeoutRate.java deleted file mode 100644 index 4bb68fedb9b..00000000000 --- a/container-core/src/main/java/com/yahoo/container/protect/TimeoutRate.java +++ /dev/null @@ -1,41 +0,0 @@ -// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -package com.yahoo.container.protect; - -/** - * Helper class to account for measuring how many queries times outs. - * - * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a> - * @deprecated this is not in use and will be removed in the next major release - */ -// TODO: Remove on Vespa 7 -@Deprecated -public final class TimeoutRate { - - private int timeouts = 0; - private int total = 0; - - public void addQuery(Boolean timeout) { - if (timeout) { - timeouts += 1; - } - total += 1; - } - - public void merge(TimeoutRate other) { - timeouts += other.timeouts; - total += other.total; - } - - public double timeoutFraction() { - if (total == 0) { - return 0.0d; - } else { - return ((double) timeouts) / ((double) total); - } - } - - public int getTotal() { - return total; - } - -} diff --git a/container-core/src/main/java/com/yahoo/container/protect/Watchdog.java b/container-core/src/main/java/com/yahoo/container/protect/Watchdog.java deleted file mode 100644 index ff425242587..00000000000 --- a/container-core/src/main/java/com/yahoo/container/protect/Watchdog.java +++ /dev/null @@ -1,168 +0,0 @@ -// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -package com.yahoo.container.protect; - -import java.util.ArrayList; -import java.util.List; -import java.util.Map; -import java.util.TimerTask; -import java.util.logging.Level; -import java.util.logging.Logger; - -import com.yahoo.concurrent.ThreadLocalDirectory; -import com.yahoo.log.LogLevel; -import com.yahoo.protect.Process; - -/** - * Watchdog for a frozen process, too many timeouts, etc. - * - * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a> - * @deprecated this is not in use and will be removed in the next major release - */ -// TODO: Remove on Vespa 7 -@Deprecated -class Watchdog extends TimerTask { - - public static final String FREEZEDETECTOR_DISABLE = "vespa.freezedetector.disable"; - Logger log = Logger.getLogger(Watchdog.class.getName()); - private long lastRun = 0L; - private long lastQpsCheck = 0L; - // Local copy to avoid ever _reading_ the volatile version - private boolean breakdownCopy = false; - private volatile boolean breakdown; - // The fraction of queries which must time out to view the QRS as being - // in breakdown - private final double timeoutThreshold; - // The minimal QPS to care about timeoutThreshold - private final int minimalQps; - private final boolean disableSevereBreakdownCheck; - private final List<ThreadLocalDirectory<TimeoutRate, Boolean>> timeoutRegistry = new ArrayList<>(); - private final boolean shutdownIfFrozen; - - Watchdog(double timeoutThreshold, int minimalQps, boolean shutdownIfFrozen) { - this.timeoutThreshold = timeoutThreshold; - this.minimalQps = minimalQps; - if (System.getProperty(FREEZEDETECTOR_DISABLE) != null) { - disableSevereBreakdownCheck = true; - } else { - disableSevereBreakdownCheck = false; - } - this.shutdownIfFrozen = shutdownIfFrozen; - } - - @Override - public void run() { - long now = System.currentTimeMillis(); - if (lastRun != 0L) { - severeBreakdown(now); - queryTimeouts(now); - } else { - lastQpsCheck = now; - } - lastRun = now; - } - - private void severeBreakdown(final long now) { - if (disableSevereBreakdownCheck) { - return; - } - if (now - lastRun < 5000L) { - return; - } - - threadStackMessage(); - - if (shutdownIfFrozen) { - Process.logAndDie("Watchdog timer meant to run ten times per second" - + " not run for five seconds or more." - + " Assuming severe failure or overloaded node, shutting down container."); - } else { - log.log(LogLevel.ERROR, - "A watchdog meant to run 10 times a second has not been invoked for 5 seconds." - + " This usually means this machine is swapping or otherwise severely overloaded."); - } - } - - private void threadStackMessage() { - log.log(LogLevel.INFO, "System seems unresponsive, performing full thread dump for diagnostics."); - threadDump(); - log.log(LogLevel.INFO, "End of diagnostic thread dump."); - } - - private void threadDump() { - try { - Map<Thread, StackTraceElement[]> allStackTraces = Thread.getAllStackTraces(); - for (Map.Entry<Thread, StackTraceElement[]> e : allStackTraces.entrySet()) { - Thread t = e.getKey(); - StackTraceElement[] stack = e.getValue(); - StringBuilder forOneThread = new StringBuilder(); - int initLen; - forOneThread.append("Stack for thread: ").append(t.getName()).append(": "); - initLen = forOneThread.length(); - for (StackTraceElement s : stack) { - if (forOneThread.length() > initLen) { - forOneThread.append(" "); - } - forOneThread.append(s.toString()); - } - log.log(LogLevel.INFO, forOneThread.toString()); - } - } catch (Exception e) { - // just give up... - } - } - - private void queryTimeouts(final long now) { - // only check query timeout every 10s - if (now - lastQpsCheck < 10000L) { - return; - } else { - lastQpsCheck = now; - } - - final TimeoutRate globalState = new TimeoutRate(); - synchronized (timeoutRegistry) { - for (ThreadLocalDirectory<TimeoutRate, Boolean> timeouts : timeoutRegistry) { - final List<TimeoutRate> threadStates = timeouts.fetch(); - for (final TimeoutRate t : threadStates) { - globalState.merge(t); - } - } - } - if (globalState.timeoutFraction() > timeoutThreshold && globalState.getTotal() > (10 * minimalQps)) { - setBreakdown(true); - log.log(Level.WARNING, "Too many queries timed out. Assuming container is in breakdown."); - } else { - if (!breakdown()) { - return; - } - setBreakdown(false); - log.log(Level.WARNING, "Fewer queries timed out. Assuming container is no longer in breakdown."); - } - } - - private void setBreakdown(final boolean state) { - breakdown = state; - breakdownCopy = state; - } - - private boolean breakdown() { - return breakdownCopy; - } - - boolean isBreakdown() { - return breakdown; - } - - void addTimeouts(ThreadLocalDirectory<TimeoutRate, Boolean> t) { - synchronized (timeoutRegistry) { - timeoutRegistry.add(t); - } - } - - void removeTimeouts(ThreadLocalDirectory<TimeoutRate, Boolean> timeouts) { - synchronized (timeoutRegistry) { - timeoutRegistry.remove(timeouts); - } - } - -} diff --git a/container-core/src/main/java/com/yahoo/container/xml/bind/JAXBContextFactory.java b/container-core/src/main/java/com/yahoo/container/xml/bind/JAXBContextFactory.java deleted file mode 100644 index c2355ce74be..00000000000 --- a/container-core/src/main/java/com/yahoo/container/xml/bind/JAXBContextFactory.java +++ /dev/null @@ -1,58 +0,0 @@ -// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -package com.yahoo.container.xml.bind; - -import javax.xml.bind.JAXBContext; -import javax.xml.bind.JAXBException; - -/** - * Container components can take an instance of this class as a constructor argument, - * to get a new instance injected by the container framework. There is usually no - * need to create an instance with this class' constructor. - * <p> - * This factory is needed because the JAXBContext needs a user defined context path, - * which means that it cannot be created at the time the container creates its - * component graph. - * - * @author <a href="mailto:einarmr@yahoo-inc.com">Einar M R Rosenvinge</a> - * @author gjoranv - * @since 5.3 - * @deprecated Do not use! - */ -@Deprecated -public class JAXBContextFactory { - public static final String FACTORY_CLASS = "com.sun.xml.internal.bind.v2.ContextFactory"; - - /** - * Returns a new JAXBContext for the context path defined by the given list of classes. - * @return A new JAXBContext. - * @param classes One class per package that contains schema derived classes and/or - * java to schema (JAXB-annotated) mapped classes - */ - public JAXBContext newInstance(Class<?>... classes) { - return newInstance(getContextPath(classes), classes[0].getClassLoader()); - } - - // TODO: guard against adding the same package more than once - static String getContextPath(Class<?>... classes) { - if (classes == null || classes.length == 0) { - throw new IllegalArgumentException("Empty package list."); - } - StringBuilder contextPath = new StringBuilder(); - for (Class<?> clazz : classes) { - contextPath - .append(clazz.getPackage().getName()) - .append(':'); - } - contextPath.deleteCharAt(contextPath.length() - 1); - return contextPath.toString(); - } - - private static JAXBContext newInstance(String contextPath, ClassLoader classLoader) { - System.setProperty(JAXBContext.JAXB_CONTEXT_FACTORY, FACTORY_CLASS); - try { - return JAXBContext.newInstance(contextPath, classLoader); - } catch (JAXBException e) { - throw new IllegalStateException(e); - } - } -} diff --git a/container-core/src/main/java/com/yahoo/container/xml/providers/JAXBContextFactoryProvider.java b/container-core/src/main/java/com/yahoo/container/xml/providers/JAXBContextFactoryProvider.java deleted file mode 100644 index 6d82fa7af82..00000000000 --- a/container-core/src/main/java/com/yahoo/container/xml/providers/JAXBContextFactoryProvider.java +++ /dev/null @@ -1,23 +0,0 @@ -// Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -package com.yahoo.container.xml.providers; - -import com.yahoo.container.di.componentgraph.Provider; - -/** - * @author <a href="mailto:einarmr@yahoo-inc.com">Einar M R Rosenvinge</a> - * @since 5.1.29 - * @deprecated Do not use! - */ -@Deprecated -@SuppressWarnings("deprecation") -public class JAXBContextFactoryProvider implements Provider<com.yahoo.container.xml.bind.JAXBContextFactory> { - public static final String FACTORY_CLASS = com.yahoo.container.xml.bind.JAXBContextFactory.class.getName(); - - @Override - public com.yahoo.container.xml.bind.JAXBContextFactory get() { - return new com.yahoo.container.xml.bind.JAXBContextFactory(); - } - - @Override - public void deconstruct() { } -} diff --git a/container-core/src/main/java/com/yahoo/language/provider/SimpleLinguisticsProvider.java b/container-core/src/main/java/com/yahoo/language/provider/DefaultLinguisticsProvider.java index 169c9f1a2a4..8f08e33a777 100644 --- a/container-core/src/main/java/com/yahoo/language/provider/SimpleLinguisticsProvider.java +++ b/container-core/src/main/java/com/yahoo/language/provider/DefaultLinguisticsProvider.java @@ -2,26 +2,23 @@ package com.yahoo.language.provider; import com.google.inject.Inject; -import com.yahoo.language.simple.SimpleLinguistics; +import com.yahoo.language.opennlp.OpenNlpLinguistics; import com.yahoo.container.di.componentgraph.Provider; import com.yahoo.language.Linguistics; -import com.yahoo.language.simple.SimpleLinguisticsConfig; /** - * Provides simple linguistics if no linguistics component has been explicitly configured + * Provides the default linguistics implementation if no linguistics component has been explicitly configured * (dependency injection will fallback to providers if no components of the requested type is found). * * @author bratseth */ -public class SimpleLinguisticsProvider implements Provider<Linguistics> { +public class DefaultLinguisticsProvider implements Provider<Linguistics> { private final Linguistics linguistics; @SuppressWarnings("deprecation") @Inject - public SimpleLinguisticsProvider(SimpleLinguisticsConfig config) { - linguistics = new SimpleLinguistics(config); - } + public DefaultLinguisticsProvider() { linguistics = new OpenNlpLinguistics(); } @Override public Linguistics get() { return linguistics; } diff --git a/container-core/src/main/java/com/yahoo/processing/handler/AbstractProcessingHandler.java b/container-core/src/main/java/com/yahoo/processing/handler/AbstractProcessingHandler.java index 2269bd1358b..72a5fbdce55 100644 --- a/container-core/src/main/java/com/yahoo/processing/handler/AbstractProcessingHandler.java +++ b/container-core/src/main/java/com/yahoo/processing/handler/AbstractProcessingHandler.java @@ -47,10 +47,9 @@ import static com.yahoo.component.chain.ChainsConfigurer.prepareChainRegistry; * <p> * COMPONENT: The type of the processing components of which this executes a chain * - * @author bratseth - * @author Tony Vaagenes - * @author <a href="mailto:steinar@yahoo-inc.com">Steinar Knutsen</a> - * @since 5.1.6 + * @author bratseth + * @author Tony Vaagenes + * @author Steinar Knutsen */ public abstract class AbstractProcessingHandler<COMPONENT extends Processor> extends LoggingRequestHandler { diff --git a/container-core/src/main/resources/configdefinitions/diagnostics.def b/container-core/src/main/resources/configdefinitions/diagnostics.def deleted file mode 100644 index 33f733d4386..00000000000 --- a/container-core/src/main/resources/configdefinitions/diagnostics.def +++ /dev/null @@ -1,16 +0,0 @@ -# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -namespace=container.core - -## The fraction of queries to time out over a period of 10s to consider -## the system in breakdown. -timeoutfraction double default=0.1 - -## Minimum QPS to consider the system in breakdown. -minimumqps int default=1 - -## Whether to shut down process if in a deadlock situation -shutdown bool default=false - -## Whether to totally disable the detector. Alternative to system property -## which works better in tests. -disabled bool default=false diff --git a/container-core/src/main/resources/configdefinitions/qr-logging.def b/container-core/src/main/resources/configdefinitions/qr-logging.def deleted file mode 100644 index f828f321ae7..00000000000 --- a/container-core/src/main/resources/configdefinitions/qr-logging.def +++ /dev/null @@ -1,38 +0,0 @@ -# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -namespace=container.core -logger string default="com.yahoo" -# Either QueryAccessLog for a regular Vespa access log, or YApacheAccessLog for a log on yApache format -speciallog[].name string - -# Leave as "" -speciallog[].type string - -speciallog[].filehandler.name string default="" - -# File name patterns supporting the expected time variables -speciallog[].filehandler.pattern string default=".%Y%m%d%H%M%S" - -speciallog[].filehandler.rotation string default="0 60 ..." - -# Defines how file rotation is done. There are two options: -# -# "date" : -# The active log file is given the name resulting from pattern (but in this case "pattern" must yield a -# time-dependent name. In addition, a symlink is created pointing to the newest file. -# The symlink is given the name of the symlink parameter (or the name of this service -# if no parameter is given. -# -# "sequence" : -# The active log file is given the name -# defined by "pattern" (which in this case will likely just be a constant string). -# At rotation, this file is given the name pattern.N where N is 1 + the largest integer found by -# extracting the integers from all files ending by .Integer in the same directory -# -speciallog[].filehandler.rotatescheme string default="date" - -# Use this as the name of the symlink created pointing to the newest file in the "date" naming scheme. -# This is ignored if the sequence naming scheme is used. -speciallog[].filehandler.symlink string default="" - -speciallog[].cachehandler.name string default="" -speciallog[].cachehandler.size int default=1000 diff --git a/container-core/src/main/resources/configdefinitions/qr-searchers.def b/container-core/src/main/resources/configdefinitions/qr-searchers.def index e2b4836c081..bb8f80052f1 100644 --- a/container-core/src/main/resources/configdefinitions/qr-searchers.def +++ b/container-core/src/main/resources/configdefinitions/qr-searchers.def @@ -14,6 +14,8 @@ com.yahoo.prelude.searcher.FieldCollapsingSearcher.extrafactor double default=2. com.yahoo.prelude.searcher.FieldCollapsingSearcher.collapsefield string default="mid" com.yahoo.prelude.searcher.BlendingSearcher.numthreads int default=200 + +# The field we'll unique on, use [id] to unique on the document id com.yahoo.prelude.searcher.BlendingSearcher.docid string default="" com.yahoo.prelude.searcher.JuniperSearcher.source string default="" @@ -74,8 +76,5 @@ searchcluster[].storagecluster.routespec string default="" searchcluster[].dispatcher[].host string searchcluster[].dispatcher[].port int -## Not used. TODO: Remove on Vespa 7 -searchcluster[].rowbits int default=0 - # Per dispatcher config-id might be nice to have, remove it until needed. # searchcluster[].dispatcher[].configid reference diff --git a/container-core/src/main/resources/configdefinitions/qr-templates.def b/container-core/src/main/resources/configdefinitions/qr-templates.def deleted file mode 100644 index 46b1a5cbd65..00000000000 --- a/container-core/src/main/resources/configdefinitions/qr-templates.def +++ /dev/null @@ -1,79 +0,0 @@ -# Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. -# Not used -# TODO: Remove on Vespa 7 -namespace=container.core - -## Prefix to use in queries to choose a given template -templateset[].urlprefix string - -## The id of the Java class which the given templateset -## should be an instance of. This is only used for implementing -## templates in the Java API instead of Velocity. -templateset[].classid string default="" - -## The symbolic name of the Osgi bundle this template is located in. -## Assumed to be the same as the classid if not set, and is only used -## when classid is used. -templateset[].bundle string default="" - -## The MIME type of a given template -templateset[].mimetype string default="text/html" - -## The character set of a given template -templateset[].encoding string default="iso-8859-1" - -## Not used -templateset[].rankprofile int default=0 - - -## Not used in 1.0 -templateset[].keepalive bool default=false - -## Header template. Always rendered. -templateset[].headertemplate string default="" - -## Footer template. Always rendered. -templateset[].footertemplate string default="" - -## Nohits template. Rendered if there are no hits in the result. -templateset[].nohitstemplate string default="" - -## Hit template. Rendered if there are hits in the result. -templateset[].hittemplate string default="" - -## Error template. Rendered if there is an error condition. This is -## not mutually exclusive with the (no)hit templates as such. -templateset[].errortemplate string default="" - -## Aggregated groups header template. -## Default rendering is used if missing -templateset[].groupsheadertemplate string default="[DEFAULT]" - -## Aggregated range group template. -## Default rendering is used if missing -templateset[].rangegrouptemplate string default="[DEFAULT]" - -## Aggregated exact group template -## Default rendering is used if missing -templateset[].exactgrouptemplate string default="[DEFAULT]" - -## Aggregated groups footer template. -## Default rendering is used if missing -templateset[].groupsfootertemplate string default="[DEFAULT]" - -## Tags used to highlight results, starting a bolded section. -## An empty string means the template should no override what -## was inserted by the search chain. -templateset[].highlightstarttag string default="" -## Tags used to highlight results, ending a bolded section -## An empty string means the template should no override what -## was inserted by the search chain. -templateset[].highlightendtag string default="" -## Tags used to highlight results, separating dynamic snippets -## An empty string means the template should no override what -## was inserted by the search chain. -templateset[].highlightseptag string default="" - -## The summary class to use for this template if there is none -## defined in the query. -templateset[].defaultsummaryclass string default="" diff --git a/container-core/src/main/resources/configdefinitions/qr.def b/container-core/src/main/resources/configdefinitions/qr.def index d6549674137..fe44b04e9d5 100644 --- a/container-core/src/main/resources/configdefinitions/qr.def +++ b/container-core/src/main/resources/configdefinitions/qr.def @@ -2,8 +2,7 @@ namespace=container ### All params must be flagged as 'restart' because this config is manually -### retrieved by ConfiguredApplication.start to init the rpc server in -### com.yahoo.container.Server. +### retrieved by ConfiguredApplication.start to init the rpc server ## filedistributor rpc configuration filedistributor.configid reference default="" restart @@ -20,10 +19,6 @@ rpc.host string default="" restart ## The id this service should register itself with in slobrok rpc.slobrokId string default="" restart -## Whether to obtain coverage reports by default. This can be overridden with -## the 'reportcoverage' HTTP parameter. -coveragereports bool default=false restart - ## A unique identifier string for this QRS. The only guarantee given is ## this string will be unique for every QRS in a Vespa application. discriminator string default="qrserver.0" restart diff --git a/container-core/src/main/resources/configdefinitions/vip-status.def b/container-core/src/main/resources/configdefinitions/vip-status.def index 6aa10ff1b90..ed7ab3e4802 100644 --- a/container-core/src/main/resources/configdefinitions/vip-status.def +++ b/container-core/src/main/resources/configdefinitions/vip-status.def @@ -1,12 +1,6 @@ # Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. namespace=container.core -## If there is a Vespa search backend connected to this container, and that -## backend is out of service, automatically remove this container from VIP -## rotation, ignoring any status file. -## TODO VESPA 7: This is always true and can be removed -noSearchBackendsImpliesOutOfService bool default=true - ## Whether to return hard-coded reply or serve "status.html" from disk accessdisk bool default=false |