From c5bbaa70a27554eec7db349e40bdca19c8313759 Mon Sep 17 00:00:00 2001 From: Geir Storli Date: Mon, 17 Jan 2022 13:46:08 +0000 Subject: Remove merge performance flags that are no longer needed. The functions in ModelContext.java can be removed when applications are on 7.528.3. --- .../yahoo/config/model/deploy/TestProperties.java | 28 ------------------ .../vespa/model/content/DistributorCluster.java | 14 +-------- .../content/storagecluster/FileStorProducer.java | 3 -- .../content/storagecluster/StorServerProducer.java | 5 ---- .../vespa/model/content/ContentClusterTest.java | 34 ---------------------- .../vespa/model/content/StorageClusterTest.java | 18 ------------ 6 files changed, 1 insertion(+), 101 deletions(-) (limited to 'config-model') 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 40b88372348..1478854aecf 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 @@ -58,7 +58,6 @@ public class TestProperties implements ModelContext.Properties, ModelContext.Fea private String jvmOmitStackTraceInFastThrowOption; private int maxConcurrentMergesPerNode = 16; private int maxMergeQueueSize = 100; - private boolean ignoreMergeQueueLimit = true; private boolean allowDisableMtls = true; private List operatorCertificates = Collections.emptyList(); private double resourceLimitDisk = 0.8; @@ -66,10 +65,7 @@ public class TestProperties implements ModelContext.Properties, ModelContext.Fea private double minNodeRatioPerGroup = 0.0; private boolean containerDumpHeapOnShutdownTimeout = false; private double containerShutdownTimeout = 50.0; - private int distributorMergeBusyWait = 1; private int maxUnCommittedMemory = 123456; - private boolean distributorEnhancedMaintenanceScheduling = true; - private boolean asyncApplyBucketDiff = true; private boolean unorderedMergeChaining = true; private List zoneDnsSuffixes = List.of(); private int maxCompactBuffers = 1; @@ -114,16 +110,12 @@ public class TestProperties implements ModelContext.Properties, ModelContext.Fea @Override public List operatorCertificates() { return operatorCertificates; } @Override public int maxConcurrentMergesPerNode() { return maxConcurrentMergesPerNode; } @Override public int maxMergeQueueSize() { return maxMergeQueueSize; } - @Override public boolean ignoreMergeQueueLimit() { return ignoreMergeQueueLimit; } @Override public double resourceLimitDisk() { return resourceLimitDisk; } @Override public double resourceLimitMemory() { return resourceLimitMemory; } @Override public double minNodeRatioPerGroup() { return minNodeRatioPerGroup; } @Override public double containerShutdownTimeout() { return containerShutdownTimeout; } @Override public boolean containerDumpHeapOnShutdownTimeout() { return containerDumpHeapOnShutdownTimeout; } - @Override public int distributorMergeBusyWait() { return distributorMergeBusyWait; } - @Override public boolean distributorEnhancedMaintenanceScheduling() { return distributorEnhancedMaintenanceScheduling; } @Override public int maxUnCommittedMemory() { return maxUnCommittedMemory; } - @Override public boolean asyncApplyBucketDiff() { return asyncApplyBucketDiff; } @Override public boolean unorderedMergeChaining() { return unorderedMergeChaining; } @Override public List zoneDnsSuffixes() { return zoneDnsSuffixes; } @Override public int maxCompactBuffers() { return maxCompactBuffers; } @@ -196,11 +188,6 @@ public class TestProperties implements ModelContext.Properties, ModelContext.Fea return this; } - public TestProperties setIgnoreMergeQueueLimit(boolean ignoreMergeQueueLimit) { - this.ignoreMergeQueueLimit = ignoreMergeQueueLimit; - return this; - } - public TestProperties setDefaultTermwiseLimit(double limit) { defaultTermwiseLimit = limit; return this; @@ -301,21 +288,6 @@ public class TestProperties implements ModelContext.Properties, ModelContext.Fea return this; } - public TestProperties setDistributorMergeBusyWait(int value) { - distributorMergeBusyWait = value; - return this; - } - - public TestProperties distributorEnhancedMaintenanceScheduling(boolean enhancedScheduling) { - distributorEnhancedMaintenanceScheduling = enhancedScheduling; - return this; - } - - public TestProperties setAsyncApplyBucketDiff(boolean value) { - asyncApplyBucketDiff = value; - return this; - } - public TestProperties setUnorderedMergeChaining(boolean unordered) { unorderedMergeChaining = unordered; return this; diff --git a/config-model/src/main/java/com/yahoo/vespa/model/content/DistributorCluster.java b/config-model/src/main/java/com/yahoo/vespa/model/content/DistributorCluster.java index 7a45689901f..b8d2a4f91fe 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/content/DistributorCluster.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/content/DistributorCluster.java @@ -42,8 +42,6 @@ public class DistributorCluster extends AbstractConfigProducer impl private final boolean hasIndexedDocumentType; private final boolean useThreePhaseUpdates; private final int maxActivationInhibitedOutOfSyncGroups; - private final int mergeBusyWait; - private final boolean enhancedMaintenanceScheduling; private final boolean unorderedMergeChaining; public static class Builder extends VespaDomBuilder.DomConfigProducerBuilder { @@ -107,16 +105,12 @@ public class DistributorCluster extends AbstractConfigProducer impl final boolean hasIndexedDocumentType = clusterContainsIndexedDocumentType(documentsNode); boolean useThreePhaseUpdates = deployState.getProperties().featureFlags().useThreePhaseUpdates(); int maxInhibitedGroups = deployState.getProperties().featureFlags().maxActivationInhibitedOutOfSyncGroups(); - int mergeBusyWait = deployState.getProperties().featureFlags().distributorMergeBusyWait(); - boolean useEnhancedMaintenanceScheduling = deployState.getProperties().featureFlags().distributorEnhancedMaintenanceScheduling(); boolean unorderedMergeChaining = deployState.getProperties().featureFlags().unorderedMergeChaining(); return new DistributorCluster(parent, new BucketSplitting.Builder().build(new ModelElement(producerSpec)), gc, hasIndexedDocumentType, useThreePhaseUpdates, - maxInhibitedGroups, mergeBusyWait, - useEnhancedMaintenanceScheduling, - unorderedMergeChaining); + maxInhibitedGroups, unorderedMergeChaining); } } @@ -124,8 +118,6 @@ public class DistributorCluster extends AbstractConfigProducer impl GcOptions gc, boolean hasIndexedDocumentType, boolean useThreePhaseUpdates, int maxActivationInhibitedOutOfSyncGroups, - int mergeBusyWait, - boolean enhancedMaintenanceScheduling, boolean unorderedMergeChaining) { super(parent, "distributor"); @@ -135,8 +127,6 @@ public class DistributorCluster extends AbstractConfigProducer impl this.hasIndexedDocumentType = hasIndexedDocumentType; this.useThreePhaseUpdates = useThreePhaseUpdates; this.maxActivationInhibitedOutOfSyncGroups = maxActivationInhibitedOutOfSyncGroups; - this.mergeBusyWait = mergeBusyWait; - this.enhancedMaintenanceScheduling = enhancedMaintenanceScheduling; this.unorderedMergeChaining = unorderedMergeChaining; } @@ -151,8 +141,6 @@ public class DistributorCluster extends AbstractConfigProducer impl builder.disable_bucket_activation(hasIndexedDocumentType == false); builder.enable_metadata_only_fetch_phase_for_inconsistent_updates(useThreePhaseUpdates); builder.max_activation_inhibited_out_of_sync_groups(maxActivationInhibitedOutOfSyncGroups); - builder.inhibit_merge_sending_on_busy_node_duration_sec(mergeBusyWait); - builder.implicitly_clear_bucket_priority_on_schedule(enhancedMaintenanceScheduling); builder.use_unordered_merge_chaining(unorderedMergeChaining); bucketSplitting.getConfig(builder); diff --git a/config-model/src/main/java/com/yahoo/vespa/model/content/storagecluster/FileStorProducer.java b/config-model/src/main/java/com/yahoo/vespa/model/content/storagecluster/FileStorProducer.java index 1f3a76b766e..5be06306f89 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/content/storagecluster/FileStorProducer.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/content/storagecluster/FileStorProducer.java @@ -48,7 +48,6 @@ public class FileStorProducer implements StorFilestorConfig.Producer { private final StorFilestorConfig.Response_sequencer_type.Enum responseSequencerType; private final StorFilestorConfig.Async_operation_throttler_type.Enum asyncOperationThrottlerType; private final boolean useAsyncMessageHandlingOnSchedule; - private final boolean asyncApplyBucketDiff; private static StorFilestorConfig.Response_sequencer_type.Enum convertResponseSequencerType(String sequencerType) { try { @@ -73,7 +72,6 @@ public class FileStorProducer implements StorFilestorConfig.Producer { this.responseSequencerType = convertResponseSequencerType(featureFlags.responseSequencerType()); this.asyncOperationThrottlerType = toAsyncOperationThrottlerType(featureFlags.persistenceAsyncThrottling()); useAsyncMessageHandlingOnSchedule = featureFlags.useAsyncMessageHandlingOnSchedule(); - asyncApplyBucketDiff = featureFlags.asyncApplyBucketDiff(); } @Override @@ -85,7 +83,6 @@ public class FileStorProducer implements StorFilestorConfig.Producer { builder.num_response_threads(reponseNumThreads); builder.response_sequencer_type(responseSequencerType); builder.use_async_message_handling_on_schedule(useAsyncMessageHandlingOnSchedule); - builder.async_apply_bucket_diff(asyncApplyBucketDiff); builder.async_operation_throttler_type(asyncOperationThrottlerType); } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/content/storagecluster/StorServerProducer.java b/config-model/src/main/java/com/yahoo/vespa/model/content/storagecluster/StorServerProducer.java index c7d581fca35..6f9166f4493 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/content/storagecluster/StorServerProducer.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/content/storagecluster/StorServerProducer.java @@ -32,7 +32,6 @@ public class StorServerProducer implements StorServerConfig.Producer { private Integer maxMergesPerNode; private Integer queueSize; private Integer bucketDBStripeBits; - private Boolean ignoreMergeQueueLimit; private StorServerProducer setMaxMergesPerNode(Integer value) { if (value != null) { @@ -55,7 +54,6 @@ public class StorServerProducer implements StorServerConfig.Producer { this.clusterName = clusterName; maxMergesPerNode = featureFlags.maxConcurrentMergesPerNode(); queueSize = featureFlags.maxMergeQueueSize(); - ignoreMergeQueueLimit = featureFlags.ignoreMergeQueueLimit(); } @Override @@ -75,8 +73,5 @@ public class StorServerProducer implements StorServerConfig.Producer { if (bucketDBStripeBits != null) { builder.content_node_bucket_db_stripe_bits(bucketDBStripeBits); } - if (ignoreMergeQueueLimit != null) { - builder.disable_queue_limits_for_chained_merges(ignoreMergeQueueLimit); - } } } diff --git a/config-model/src/test/java/com/yahoo/vespa/model/content/ContentClusterTest.java b/config-model/src/test/java/com/yahoo/vespa/model/content/ContentClusterTest.java index 87a962339e9..10a2feaba5b 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/content/ContentClusterTest.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/content/ContentClusterTest.java @@ -1119,40 +1119,6 @@ public class ContentClusterTest extends ContentBaseTest { assertEquals(4, resolveTunedNumDistributorStripesConfig(65)); } - @Test - public void distributor_merge_busy_wait_controlled_by_properties() throws Exception { - assertEquals(1, resolveDistributorMergeBusyWaitConfig(Optional.empty())); - assertEquals(5, resolveDistributorMergeBusyWaitConfig(Optional.of(5))); - } - - private int resolveDistributorMergeBusyWaitConfig(Optional mergeBusyWait) throws Exception { - var props = new TestProperties(); - if (mergeBusyWait.isPresent()) { - props.setDistributorMergeBusyWait(mergeBusyWait.get()); - } - var cluster = createOneNodeCluster(props); - var builder = new StorDistributormanagerConfig.Builder(); - cluster.getDistributorNodes().getConfig(builder); - return (new StorDistributormanagerConfig(builder)).inhibit_merge_sending_on_busy_node_duration_sec(); - } - - @Test - public void distributor_enhanced_maintenance_scheduling_controlled_by_properties() throws Exception { - assertFalse(resolveDistributorEnhancedSchedulingConfig(Optional.of(false))); - assertTrue(resolveDistributorEnhancedSchedulingConfig(Optional.empty())); - } - - private boolean resolveDistributorEnhancedSchedulingConfig(Optional enhancedScheduling) throws Exception { - var props = new TestProperties(); - if (enhancedScheduling.isPresent()) { - props.distributorEnhancedMaintenanceScheduling(enhancedScheduling.get()); - } - var cluster = createOneNodeCluster(props); - var builder = new StorDistributormanagerConfig.Builder(); - cluster.getDistributorNodes().getConfig(builder); - return (new StorDistributormanagerConfig(builder)).implicitly_clear_bucket_priority_on_schedule(); - } - @Test public void unordered_merge_chaining_config_controlled_by_properties() throws Exception { assertFalse(resolveUnorderedMergeChainingConfig(Optional.of(false))); diff --git a/config-model/src/test/java/com/yahoo/vespa/model/content/StorageClusterTest.java b/config-model/src/test/java/com/yahoo/vespa/model/content/StorageClusterTest.java index cf877d3bf88..3a67157f135 100644 --- a/config-model/src/test/java/com/yahoo/vespa/model/content/StorageClusterTest.java +++ b/config-model/src/test/java/com/yahoo/vespa/model/content/StorageClusterTest.java @@ -159,24 +159,6 @@ public class StorageClusterTest { assertEquals(1919, config.max_merge_queue_size()); } - @Test - public void ignore_merge_queue_limit_can_be_controlled_by_feature_flag() { - var config = configFromProperties(new TestProperties().setIgnoreMergeQueueLimit(true)); - assertTrue(config.disable_queue_limits_for_chained_merges()); - - config = configFromProperties(new TestProperties().setIgnoreMergeQueueLimit(false)); - assertFalse(config.disable_queue_limits_for_chained_merges()); - } - - @Test - public void async_apply_bucket_diff_can_be_controlled_by_feature_flag() { - var config = filestorConfigFromProperties(new TestProperties()); - assertTrue(config.async_apply_bucket_diff()); - - config = filestorConfigFromProperties(new TestProperties().setAsyncApplyBucketDiff(false)); - assertFalse(config.async_apply_bucket_diff()); - } - @Test public void testVisitors() { StorVisitorConfig.Builder builder = new StorVisitorConfig.Builder(); -- cgit v1.2.3