diff options
9 files changed, 16 insertions, 90 deletions
diff --git a/config-model-api/src/main/java/com/yahoo/config/model/api/ModelContext.java b/config-model-api/src/main/java/com/yahoo/config/model/api/ModelContext.java index fa4fee417fd..f32f9a8c341 100644 --- a/config-model-api/src/main/java/com/yahoo/config/model/api/ModelContext.java +++ b/config-model-api/src/main/java/com/yahoo/config/model/api/ModelContext.java @@ -84,9 +84,10 @@ public interface ModelContext { boolean skipCommunicationManagerThread(); boolean skipMbusRequestThread(); boolean skipMbusReplyThread(); - boolean tlsUseFSync(); - String tlsCompressionType(); - double visibilityDelay(); + // TODO(balder) Last used on 7.305 + default boolean tlsUseFSync() { return true; } + default String tlsCompressionType() { return "ZSTD"; } + default double visibilityDelay() { return 0.0; } boolean useContentNodeBtreeDb(); diff --git a/config-model/src/main/java/com/yahoo/config/model/deploy/TestProperties.java b/config-model/src/main/java/com/yahoo/config/model/deploy/TestProperties.java index 7628af85b52..736f2b360b6 100644 --- a/config-model/src/main/java/com/yahoo/config/model/deploy/TestProperties.java +++ b/config-model/src/main/java/com/yahoo/config/model/deploy/TestProperties.java @@ -39,12 +39,9 @@ public class TestProperties implements ModelContext.Properties { private boolean useThreePhaseUpdates = false; private boolean useDirectStorageApiRpc = false; private boolean useFastValueTensorImplementation = false; - private boolean tlsUseFSync = false; - private String tlsCompressionType = "NONE"; private double defaultTermwiseLimit = 1.0; private double threadPoolSizeFactor = 0.0; private double queueSizeFactor = 0.0; - private double visibilityDelay = 0.0; private String jvmGCOptions = null; private String sequencerType = "LATENCY"; private String responseSequencerType = "ADAPTIVE"; @@ -84,9 +81,6 @@ public class TestProperties implements ModelContext.Properties { @Override public boolean skipMbusRequestThread() { return false; } @Override public boolean skipMbusReplyThread() { return false; } @Override public Quota quota() { return quota; } - @Override public double visibilityDelay() { return visibilityDelay; } - @Override public boolean tlsUseFSync() { return tlsUseFSync; } - @Override public String tlsCompressionType() { return tlsCompressionType; } @Override public boolean useAccessControlTlsHandshakeClientAuth() { return useAccessControlTlsHandshakeClientAuth; } @Override public double jettyThreadpoolSizeFactor() { return jettyThreadpoolSizeFactor; } @@ -143,21 +137,6 @@ public class TestProperties implements ModelContext.Properties { return this; } - public TestProperties setTlsUseFSync(boolean useFSync) { - this.tlsUseFSync = useFSync; - return this; - } - - public TestProperties setTlsCompressionType(String type) { - this.tlsCompressionType = type; - return this; - } - - public TestProperties setVisibilityDelay(double visibilityDelay) { - this.visibilityDelay = visibilityDelay; - return this; - } - public TestProperties setMultitenant(boolean multitenant) { this.multitenant = multitenant; return this; 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 2c158e89ff7..7c057264204 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 @@ -200,7 +200,6 @@ public class ContentSearchCluster extends AbstractConfigProducer implements Prot this.flushOnShutdown = flushOnShutdown; this.combined = combined; feedSequencerType = convertFeedSequencerType(featureFlags.feedSequencerType()); - visibilityDelay = featureFlags.visibilityDelay(); } public void setVisibilityDelay(double delay) { @@ -268,7 +267,7 @@ public class ContentSearchCluster extends AbstractConfigProducer implements Prot searchNode.setHostResource(node.getHostResource()); searchNode.initService(deployState.getDeployLogger()); - tls = new TransactionLogServer(searchNode, clusterName, deployState.getProperties()); + tls = new TransactionLogServer(searchNode, clusterName); tls.setHostResource(searchNode.getHostResource()); tls.initService(deployState.getDeployLogger()); } else { diff --git a/config-model/src/main/java/com/yahoo/vespa/model/search/TransactionLogServer.java b/config-model/src/main/java/com/yahoo/vespa/model/search/TransactionLogServer.java index 347250176e5..65aa32c255c 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/search/TransactionLogServer.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/search/TransactionLogServer.java @@ -16,8 +16,6 @@ import org.w3c.dom.Element; public class TransactionLogServer extends AbstractService { private static final long serialVersionUID = 1L; - private final boolean useFSync; - private final TranslogserverConfig.Compression.Type.Enum compressionType; private static TranslogserverConfig.Compression.Type.Enum convertCompressionType(String type) { try { @@ -27,13 +25,11 @@ public class TransactionLogServer extends AbstractService { } } - public TransactionLogServer(AbstractConfigProducer searchNode, String clusterName, ModelContext.Properties featureFlags) { + public TransactionLogServer(AbstractConfigProducer searchNode, String clusterName) { super(searchNode, "transactionlogserver"); portsMeta.on(0).tag("tls"); setProp("clustername", clusterName); setProp("clustertype", "search"); - useFSync = featureFlags.tlsUseFSync(); - compressionType = convertCompressionType(featureFlags.tlsCompressionType()); } public static class Builder extends VespaDomBuilder.DomConfigProducerBuilder<TransactionLogServer> { @@ -44,7 +40,7 @@ public class TransactionLogServer extends AbstractService { @Override protected TransactionLogServer doBuild(DeployState deployState, AbstractConfigProducer ancestor, Element producerSpec) { - return new TransactionLogServer(ancestor, clusterName, deployState.getProperties()); + return new TransactionLogServer(ancestor, clusterName); } } @@ -78,8 +74,7 @@ public class TransactionLogServer extends AbstractService { public void getConfig(TranslogserverConfig.Builder builder) { builder.listenport(getTlsPort()).basedir(getTlsDir()); - builder.usefsync(useFSync); - builder.compression.type(compressionType); + } } diff --git a/config-model/src/test/java/com/yahoo/vespa/model/builder/xml/dom/ContentBuilderTest.java b/config-model/src/test/java/com/yahoo/vespa/model/builder/xml/dom/ContentBuilderTest.java index 10049daa541..00b3fc22956 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/builder/xml/dom/ContentBuilderTest.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/builder/xml/dom/ContentBuilderTest.java @@ -803,9 +803,9 @@ public class ContentBuilderTest extends DomBuilderTest { } - private void verifyThatFeatureFlagControlsVisibilityDelayDefault(double defaultVisibiliDelay, Double xmlOverride, double expected) { + private void verifyThatFeatureFlagControlsVisibilityDelayDefault(Double xmlOverride, double expected) { String hostedXml = xmlWithVisibilityDelay(xmlOverride); - DeployState.Builder deployStateBuilder = new DeployState.Builder().properties(new TestProperties().setVisibilityDelay(defaultVisibiliDelay)); + DeployState.Builder deployStateBuilder = new DeployState.Builder().properties(new TestProperties()); VespaModel model = new VespaModelCreatorWithMockPkg(new MockApplicationPackage.Builder() .withServices(hostedXml) .withSearchDefinition(MockApplicationPackage.MUSIC_SEARCHDEFINITION) @@ -816,10 +816,9 @@ public class ContentBuilderTest extends DomBuilderTest { } @Test public void verifyThatFeatureFlagControlsVisibilityDelayDefault() { - verifyThatFeatureFlagControlsVisibilityDelayDefault(0.0, null, 0.0); - verifyThatFeatureFlagControlsVisibilityDelayDefault(0.3, null, 0.3); - verifyThatFeatureFlagControlsVisibilityDelayDefault(0.0, 0.5, 0.5); - verifyThatFeatureFlagControlsVisibilityDelayDefault(0.3, 0.6, 0.6); + verifyThatFeatureFlagControlsVisibilityDelayDefault(null, 0.0); + verifyThatFeatureFlagControlsVisibilityDelayDefault(0.5, 0.5); + verifyThatFeatureFlagControlsVisibilityDelayDefault(0.6, 0.6); } @Test diff --git a/config-model/src/test/java/com/yahoo/vespa/model/search/test/SearchNodeTest.java b/config-model/src/test/java/com/yahoo/vespa/model/search/test/SearchNodeTest.java index 5b44ece1755..e4dabfaddae 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/search/test/SearchNodeTest.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/search/test/SearchNodeTest.java @@ -40,7 +40,7 @@ public class SearchNodeTest { private void prepare(MockRoot root, SearchNode node) { Host host = new Host(root, "mockhost"); - TransactionLogServer tls = new TransactionLogServer(root, "mycluster", root.getDeployState().getProperties()); + TransactionLogServer tls = new TransactionLogServer(root, "mycluster"); tls.setHostResource(new HostResource(host)); tls.setBasePort(100); tls.initService(root.deployLogger()); @@ -101,21 +101,4 @@ public class SearchNodeTest { return tlsBuilder.build(); } - @Test - public void requireThaFeatureFlagCanControlTlsUseFSync() { - assertFalse(getTlsConfig(new TestProperties()).usefsync()); - assertFalse(getTlsConfig(new TestProperties().setTlsUseFSync(false)).usefsync()); - assertTrue(getTlsConfig(new TestProperties().setTlsUseFSync(true)).usefsync()); - } - - @Test - public void requireThaFeatureFlagCanControlCompressionType() { - assertEquals(TranslogserverConfig.Compression.Type.NONE, getTlsConfig(new TestProperties()).compression().type()); - assertEquals(TranslogserverConfig.Compression.Type.NONE, getTlsConfig(new TestProperties().setTlsCompressionType("NONE")).compression().type()); - assertEquals(TranslogserverConfig.Compression.Type.NONE_MULTI, getTlsConfig(new TestProperties().setTlsCompressionType("NONE_MULTI")).compression().type()); - assertEquals(TranslogserverConfig.Compression.Type.ZSTD, getTlsConfig(new TestProperties().setTlsCompressionType("ZSTD")).compression().type()); - assertEquals(TranslogserverConfig.Compression.Type.LZ4, getTlsConfig(new TestProperties().setTlsCompressionType("LZ4")).compression().type()); - assertEquals(TranslogserverConfig.Compression.Type.NONE, getTlsConfig(new TestProperties().setTlsCompressionType("zstd")).compression().type()); - } - } diff --git a/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/ModelContextImpl.java b/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/ModelContextImpl.java index 95b9ac433cf..420bcb954c9 100644 --- a/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/ModelContextImpl.java +++ b/configserver/src/main/java/com/yahoo/vespa/config/server/deploy/ModelContextImpl.java @@ -162,10 +162,7 @@ public class ModelContextImpl implements ModelContext { private final boolean skipMbusReplyThread; private final Optional<AthenzDomain> athenzDomain; private final Optional<ApplicationRoles> applicationRoles; - private final double visibilityDelay; private final Quota quota; - private final boolean tlsUseFSync; - private final String tlsCompressionType; private final boolean useNewRestapiHandler; private final boolean useAccessControlTlsHandshakeClientAuth; private final double jettyThreadpoolSizeFactor; @@ -208,12 +205,6 @@ public class ModelContextImpl implements ModelContext { .with(FetchVector.Dimension.APPLICATION_ID, applicationId.serializedForm()).value(); useFastValueTensorImplementation = Flags.USE_FAST_VALUE_TENSOR_IMPLEMENTATION.bindTo(flagSource) .with(FetchVector.Dimension.APPLICATION_ID, applicationId.serializedForm()).value(); - visibilityDelay = Flags.VISIBILITY_DELAY.bindTo(flagSource) - .with(FetchVector.Dimension.APPLICATION_ID, applicationId.serializedForm()).value(); - tlsCompressionType = Flags.TLS_COMPRESSION_TYPE.bindTo(flagSource) - .with(FetchVector.Dimension.APPLICATION_ID, applicationId.serializedForm()).value(); - tlsUseFSync = Flags.TLS_USE_FSYNC.bindTo(flagSource) - .with(FetchVector.Dimension.APPLICATION_ID, applicationId.serializedForm()).value(); jvmGCOPtions = Flags.JVM_GC_OPTIONS.bindTo(flagSource) .with(FetchVector.Dimension.APPLICATION_ID, applicationId.serializedForm()).value(); feedSequencer = Flags.FEED_SEQUENCER_TYPE.bindTo(flagSource) @@ -323,9 +314,6 @@ public class ModelContextImpl implements ModelContext { @Override public boolean skipCommunicationManagerThread() { return skipCommunicationManagerThread; } @Override public boolean skipMbusRequestThread() { return skipMbusRequestThread; } @Override public boolean skipMbusReplyThread() { return skipMbusReplyThread; } - @Override public double visibilityDelay() { return visibilityDelay; } - @Override public boolean tlsUseFSync() { return tlsUseFSync; } - @Override public String tlsCompressionType() { return tlsCompressionType; } @Override public Quota quota() { return quota; } @Override public boolean useNewRestapiHandler() { return useNewRestapiHandler; } diff --git a/flags/src/main/java/com/yahoo/vespa/flags/Flags.java b/flags/src/main/java/com/yahoo/vespa/flags/Flags.java index 1d4cd21975d..383a79c5c89 100644 --- a/flags/src/main/java/com/yahoo/vespa/flags/Flags.java +++ b/flags/src/main/java/com/yahoo/vespa/flags/Flags.java @@ -161,24 +161,6 @@ public class Flags { "Takes effect at redeployment", ZONE_ID, APPLICATION_ID); - public static final UnboundStringFlag TLS_COMPRESSION_TYPE = defineStringFlag( - "tls-compression-type", "NONE", - "Selects type of compression, valid values are NONE, NONE_MULTI, LZ4, ZSTD", - "Takes effect at redeployment", - ZONE_ID, APPLICATION_ID); - - public static final UnboundBooleanFlag TLS_USE_FSYNC = defineFeatureFlag( - "tls-use-fsync", false, - "Whether to use fsync when writing to the TLS.", - "Takes effect at redeployment", - ZONE_ID, APPLICATION_ID); - - public static final UnboundDoubleFlag VISIBILITY_DELAY = defineDoubleFlag( - "visibility-delay", 0.0, - "Default visibility-delay", - "Takes effect at redeployment", - ZONE_ID, APPLICATION_ID); - public static final UnboundBooleanFlag USE_DIRECT_STORAGE_API_RPC = defineFeatureFlag( "use-direct-storage-api-rpc", false, "Whether to use direct RPC for Storage API communication between content cluster nodes.", diff --git a/searchlib/src/vespa/searchlib/config/translogserver.def b/searchlib/src/vespa/searchlib/config/translogserver.def index defce8c3421..4d985b2929d 100644 --- a/searchlib/src/vespa/searchlib/config/translogserver.def +++ b/searchlib/src/vespa/searchlib/config/translogserver.def @@ -15,7 +15,7 @@ basedir string default="tmp" restart ## Use fsync after each commit. ## If not the below interval is used. -usefsync bool default=false +usefsync bool default=true ##Number of threads available for visiting/subscription. maxthreads int default=4 restart @@ -24,7 +24,7 @@ maxthreads int default=4 restart crcmethod enum {ccitt_crc32, xxh64} default=xxh64 ## Control compression type. -compression.type enum {NONE, NONE_MULTI, LZ4, ZSTD} default=NONE +compression.type enum {NONE, NONE_MULTI, LZ4, ZSTD} default=ZSTD ## Control compression level ## LZ4 has normal range 1..9 while ZSTD has range 1..19 |