diff --git a/CHANGELOG.md b/CHANGELOG.md index 6d0e37cd1d829..8970993b55632 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -18,7 +18,7 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/), - Add `rangeQuery` and `regexpQuery` for `constant_keyword` field type ([#14711](https://github.com/opensearch-project/OpenSearch/pull/14711)) - Add took time to request nodes stats ([#15054](https://github.com/opensearch-project/OpenSearch/pull/15054)) - [Workload Management] Add Get QueryGroup API Logic ([14709](https://github.com/opensearch-project/OpenSearch/pull/14709)) -- [Workload Management] Add QueryGroupServiceSettings ([#15028](https://github.com/opensearch-project/OpenSearch/pull/15028)) +- [Workload Management] Add Settings for Workload Management feature ([#15028](https://github.com/opensearch-project/OpenSearch/pull/15028)) - [Workload Management] QueryGroup resource tracking framework changes ([#13897](https://github.com/opensearch-project/OpenSearch/pull/13897)) - Support filtering on a large list encoded by bitmap ([#14774](https://github.com/opensearch-project/OpenSearch/pull/14774)) - Add slice execution listeners to SearchOperationListener interface ([#15153](https://github.com/opensearch-project/OpenSearch/pull/15153)) diff --git a/server/src/main/java/org/opensearch/common/settings/ClusterSettings.java b/server/src/main/java/org/opensearch/common/settings/ClusterSettings.java index 6efb3b4febcb4..49ef87838ed2e 100644 --- a/server/src/main/java/org/opensearch/common/settings/ClusterSettings.java +++ b/server/src/main/java/org/opensearch/common/settings/ClusterSettings.java @@ -159,7 +159,6 @@ import org.opensearch.search.backpressure.settings.SearchShardTaskSettings; import org.opensearch.search.backpressure.settings.SearchTaskSettings; import org.opensearch.search.fetch.subphase.highlight.FastVectorHighlighter; -import org.opensearch.search.query_group.QueryGroupServiceSettings; import org.opensearch.snapshots.InternalSnapshotsInfoService; import org.opensearch.snapshots.SnapshotsService; import org.opensearch.tasks.TaskCancellationMonitoringSettings; @@ -174,6 +173,7 @@ import org.opensearch.transport.SniffConnectionStrategy; import org.opensearch.transport.TransportSettings; import org.opensearch.watcher.ResourceWatcherService; +import org.opensearch.wlm.WorkloadManagementSettings; import java.util.Arrays; import java.util.Collections; @@ -769,11 +769,11 @@ public void apply(Settings value, Settings current, Settings previous) { SystemTemplatesService.SETTING_APPLICATION_BASED_CONFIGURATION_TEMPLATES_ENABLED, - // QueryGroup settings - QueryGroupServiceSettings.NODE_LEVEL_CPU_REJECTION_THRESHOLD, - QueryGroupServiceSettings.NODE_LEVEL_CPU_CANCELLATION_THRESHOLD, - QueryGroupServiceSettings.NODE_LEVEL_MEMORY_REJECTION_THRESHOLD, - QueryGroupServiceSettings.NODE_LEVEL_MEMORY_CANCELLATION_THRESHOLD + // WorkloadManagement settings + WorkloadManagementSettings.NODE_LEVEL_CPU_REJECTION_THRESHOLD, + WorkloadManagementSettings.NODE_LEVEL_CPU_CANCELLATION_THRESHOLD, + WorkloadManagementSettings.NODE_LEVEL_MEMORY_REJECTION_THRESHOLD, + WorkloadManagementSettings.NODE_LEVEL_MEMORY_CANCELLATION_THRESHOLD ) ) ); diff --git a/server/src/main/java/org/opensearch/search/query_group/package-info.java b/server/src/main/java/org/opensearch/search/query_group/package-info.java deleted file mode 100644 index ee6c5692f32c7..0000000000000 --- a/server/src/main/java/org/opensearch/search/query_group/package-info.java +++ /dev/null @@ -1,12 +0,0 @@ -/* - * SPDX-License-Identifier: Apache-2.0 - * - * The OpenSearch Contributors require contributions made to - * this file be licensed under the Apache-2.0 license or a - * compatible open source license. - */ - -/** - * QueryGroup related settings - */ -package org.opensearch.search.query_group; diff --git a/server/src/main/java/org/opensearch/search/query_group/QueryGroupServiceSettings.java b/server/src/main/java/org/opensearch/wlm/WorkloadManagementSettings.java similarity index 93% rename from server/src/main/java/org/opensearch/search/query_group/QueryGroupServiceSettings.java rename to server/src/main/java/org/opensearch/wlm/WorkloadManagementSettings.java index 396887a3fffc9..b104925df77b3 100644 --- a/server/src/main/java/org/opensearch/search/query_group/QueryGroupServiceSettings.java +++ b/server/src/main/java/org/opensearch/wlm/WorkloadManagementSettings.java @@ -6,16 +6,16 @@ * compatible open source license. */ -package org.opensearch.search.query_group; +package org.opensearch.wlm; import org.opensearch.common.settings.ClusterSettings; import org.opensearch.common.settings.Setting; import org.opensearch.common.settings.Settings; /** - * Main class to declare the QueryGroup feature related settings + * Main class to declare Workload Management related settings */ -public class QueryGroupServiceSettings { +public class WorkloadManagementSettings { private static final Double DEFAULT_NODE_LEVEL_MEMORY_REJECTION_THRESHOLD = 0.8; private static final Double DEFAULT_NODE_LEVEL_MEMORY_CANCELLATION_THRESHOLD = 0.9; private static final Double DEFAULT_NODE_LEVEL_CPU_REJECTION_THRESHOLD = 0.8; @@ -33,7 +33,7 @@ public class QueryGroupServiceSettings { /** * Setting name for node level memory based rejection threshold for QueryGroup service */ - public static final String NODE_MEMORY_REJECTION_THRESHOLD_SETTING_NAME = "query_group.node.memory_rejection_threshold"; + public static final String NODE_MEMORY_REJECTION_THRESHOLD_SETTING_NAME = "wlm.query_group.node.memory_rejection_threshold"; /** * Setting to control the memory based rejection threshold */ @@ -46,7 +46,7 @@ public class QueryGroupServiceSettings { /** * Setting name for node level cpu based rejection threshold for QueryGroup service */ - public static final String NODE_CPU_REJECTION_THRESHOLD_SETTING_NAME = "query_group.node.cpu_rejection_threshold"; + public static final String NODE_CPU_REJECTION_THRESHOLD_SETTING_NAME = "wlm.query_group.node.cpu_rejection_threshold"; /** * Setting to control the cpu based rejection threshold */ @@ -59,7 +59,7 @@ public class QueryGroupServiceSettings { /** * Setting name for node level memory based cancellation threshold for QueryGroup service */ - public static final String NODE_MEMORY_CANCELLATION_THRESHOLD_SETTING_NAME = "query_group.node.memory_cancellation_threshold"; + public static final String NODE_MEMORY_CANCELLATION_THRESHOLD_SETTING_NAME = "wlm.query_group.node.memory_cancellation_threshold"; /** * Setting to control the memory based cancellation threshold */ @@ -72,7 +72,7 @@ public class QueryGroupServiceSettings { /** * Setting name for node level cpu based cancellation threshold for QueryGroup service */ - public static final String NODE_CPU_CANCELLATION_THRESHOLD_SETTING_NAME = "query_group.node.cpu_cancellation_threshold"; + public static final String NODE_CPU_CANCELLATION_THRESHOLD_SETTING_NAME = "wlm.query_group.node.cpu_cancellation_threshold"; /** * Setting to control the cpu based cancellation threshold */ @@ -88,7 +88,7 @@ public class QueryGroupServiceSettings { * @param settings - QueryGroup service settings * @param clusterSettings - QueryGroup cluster settings */ - public QueryGroupServiceSettings(Settings settings, ClusterSettings clusterSettings) { + public WorkloadManagementSettings(Settings settings, ClusterSettings clusterSettings) { nodeLevelMemoryCancellationThreshold = NODE_LEVEL_MEMORY_CANCELLATION_THRESHOLD.get(settings); nodeLevelMemoryRejectionThreshold = NODE_LEVEL_MEMORY_REJECTION_THRESHOLD.get(settings); nodeLevelCpuCancellationThreshold = NODE_LEVEL_CPU_CANCELLATION_THRESHOLD.get(settings); @@ -129,7 +129,7 @@ public Double getNodeLevelMemoryCancellationThreshold() { public void setNodeLevelMemoryCancellationThreshold(Double nodeLevelMemoryCancellationThreshold) { if (Double.compare(nodeLevelMemoryCancellationThreshold, NODE_LEVEL_MEMORY_CANCELLATION_THRESHOLD_MAX_VALUE) > 0) { throw new IllegalArgumentException( - NODE_MEMORY_CANCELLATION_THRESHOLD_SETTING_NAME + " value should not be greater than 0.95 as it pose a threat of node drop" + NODE_MEMORY_CANCELLATION_THRESHOLD_SETTING_NAME + " value cannot be greater than 0.95 as it can result in a node drop" ); } @@ -159,7 +159,7 @@ public Double getNodeLevelCpuCancellationThreshold() { public void setNodeLevelCpuCancellationThreshold(Double nodeLevelCpuCancellationThreshold) { if (Double.compare(nodeLevelCpuCancellationThreshold, NODE_LEVEL_CPU_CANCELLATION_THRESHOLD_MAX_VALUE) > 0) { throw new IllegalArgumentException( - NODE_CPU_CANCELLATION_THRESHOLD_SETTING_NAME + " value should not be greater than 0.95 as it pose a threat of node drop" + NODE_CPU_CANCELLATION_THRESHOLD_SETTING_NAME + " value cannot be greater than 0.95 as it can result in a node drop" ); } @@ -189,7 +189,7 @@ public Double getNodeLevelMemoryRejectionThreshold() { public void setNodeLevelMemoryRejectionThreshold(Double nodeLevelMemoryRejectionThreshold) { if (Double.compare(nodeLevelMemoryRejectionThreshold, NODE_LEVEL_MEMORY_REJECTION_THRESHOLD_MAX_VALUE) > 0) { throw new IllegalArgumentException( - NODE_MEMORY_REJECTION_THRESHOLD_SETTING_NAME + " value not be greater than 0.90 as it pose a threat of node drop" + NODE_MEMORY_REJECTION_THRESHOLD_SETTING_NAME + " value cannot be greater than 0.90 as it can result in a node drop" ); } @@ -219,7 +219,7 @@ public Double getNodeLevelCpuRejectionThreshold() { public void setNodeLevelCpuRejectionThreshold(Double nodeLevelCpuRejectionThreshold) { if (Double.compare(nodeLevelCpuRejectionThreshold, NODE_LEVEL_CPU_REJECTION_THRESHOLD_MAX_VALUE) > 0) { throw new IllegalArgumentException( - NODE_CPU_REJECTION_THRESHOLD_SETTING_NAME + " value not be greater than 0.90 as it pose a threat of node drop" + NODE_CPU_REJECTION_THRESHOLD_SETTING_NAME + " value cannot be greater than 0.90 as it can result in a node drop" ); } diff --git a/server/src/test/java/org/opensearch/search/query_group/QueryGroupServiceSettingsTests.java b/server/src/test/java/org/opensearch/wlm/WorkloadManagementSettingsTests.java similarity index 51% rename from server/src/test/java/org/opensearch/search/query_group/QueryGroupServiceSettingsTests.java rename to server/src/test/java/org/opensearch/wlm/WorkloadManagementSettingsTests.java index 021b399d8c87a..0f183555781d3 100644 --- a/server/src/test/java/org/opensearch/search/query_group/QueryGroupServiceSettingsTests.java +++ b/server/src/test/java/org/opensearch/wlm/WorkloadManagementSettingsTests.java @@ -6,87 +6,87 @@ * compatible open source license. */ -package org.opensearch.search.query_group; +package org.opensearch.wlm; import org.opensearch.common.settings.ClusterSettings; import org.opensearch.common.settings.Settings; import org.opensearch.test.OpenSearchTestCase; -import static org.opensearch.search.query_group.QueryGroupServiceSettings.NODE_CPU_CANCELLATION_THRESHOLD_SETTING_NAME; -import static org.opensearch.search.query_group.QueryGroupServiceSettings.NODE_CPU_REJECTION_THRESHOLD_SETTING_NAME; -import static org.opensearch.search.query_group.QueryGroupServiceSettings.NODE_MEMORY_CANCELLATION_THRESHOLD_SETTING_NAME; -import static org.opensearch.search.query_group.QueryGroupServiceSettings.NODE_MEMORY_REJECTION_THRESHOLD_SETTING_NAME; +import static org.opensearch.wlm.WorkloadManagementSettings.NODE_CPU_CANCELLATION_THRESHOLD_SETTING_NAME; +import static org.opensearch.wlm.WorkloadManagementSettings.NODE_CPU_REJECTION_THRESHOLD_SETTING_NAME; +import static org.opensearch.wlm.WorkloadManagementSettings.NODE_MEMORY_CANCELLATION_THRESHOLD_SETTING_NAME; +import static org.opensearch.wlm.WorkloadManagementSettings.NODE_MEMORY_REJECTION_THRESHOLD_SETTING_NAME; -public class QueryGroupServiceSettingsTests extends OpenSearchTestCase { +public class WorkloadManagementSettingsTests extends OpenSearchTestCase { /** - * Tests the invalid value for {@code query_group.node.memory_rejection_threshold} - * When the value is set more than {@code query_group.node.memory_cancellation_threshold} accidentally during - * new feature development. This test is to ensure that {@link QueryGroupServiceSettings} holds the + * Tests the invalid value for {@code wlm.query_group.node.memory_rejection_threshold} + * When the value is set more than {@code wlm.query_group.node.memory_cancellation_threshold} accidentally during + * new feature development. This test is to ensure that {@link WorkloadManagementSettings} holds the * invariant {@code nodeLevelRejectionThreshold < nodeLevelCancellationThreshold} */ - public void testInvalidMemoryInstantiationOfQueryGroupServiceSettings() { + public void testInvalidMemoryInstantiationOfWorkloadManagementSettings() { Settings settings = Settings.builder() .put(NODE_MEMORY_REJECTION_THRESHOLD_SETTING_NAME, 0.8) .put(NODE_MEMORY_CANCELLATION_THRESHOLD_SETTING_NAME, 0.7) .build(); ClusterSettings cs = new ClusterSettings(Settings.EMPTY, ClusterSettings.BUILT_IN_CLUSTER_SETTINGS); - assertThrows(IllegalArgumentException.class, () -> new QueryGroupServiceSettings(settings, cs)); + assertThrows(IllegalArgumentException.class, () -> new WorkloadManagementSettings(settings, cs)); } /** - * Tests the invalid value for {@code query_group.node.cpu_rejection_threshold} - * When the value is set more than {@code query_group.node.cpu_cancellation_threshold} accidentally during - * new feature development. This test is to ensure that {@link QueryGroupServiceSettings} holds the + * Tests the invalid value for {@code wlm.query_group.node.cpu_rejection_threshold} + * When the value is set more than {@code wlm.query_group.node.cpu_cancellation_threshold} accidentally during + * new feature development. This test is to ensure that {@link WorkloadManagementSettings} holds the * invariant {@code nodeLevelRejectionThreshold < nodeLevelCancellationThreshold} */ - public void testInvalidCpuInstantiationOfQueryGroupServiceSettings() { + public void testInvalidCpuInstantiationOfWorkloadManagementSettings() { Settings settings = Settings.builder() .put(NODE_CPU_REJECTION_THRESHOLD_SETTING_NAME, 0.8) .put(NODE_CPU_CANCELLATION_THRESHOLD_SETTING_NAME, 0.7) .build(); ClusterSettings cs = new ClusterSettings(Settings.EMPTY, ClusterSettings.BUILT_IN_CLUSTER_SETTINGS); - assertThrows(IllegalArgumentException.class, () -> new QueryGroupServiceSettings(settings, cs)); + assertThrows(IllegalArgumentException.class, () -> new WorkloadManagementSettings(settings, cs)); } /** - * Tests the valid value for {@code query_group.node.cpu_rejection_threshold} + * Tests the valid value for {@code wlm.query_group.node.cpu_rejection_threshold} * Using setNodeLevelCpuRejectionThreshold function */ public void testValidNodeLevelCpuRejectionThresholdCase1() { Settings settings = Settings.builder().put(NODE_CPU_CANCELLATION_THRESHOLD_SETTING_NAME, 0.8).build(); ClusterSettings cs = new ClusterSettings(Settings.EMPTY, ClusterSettings.BUILT_IN_CLUSTER_SETTINGS); - QueryGroupServiceSettings queryGroupServiceSettings = new QueryGroupServiceSettings(settings, cs); - queryGroupServiceSettings.setNodeLevelCpuRejectionThreshold(0.7); - assertEquals(0.7, queryGroupServiceSettings.getNodeLevelCpuRejectionThreshold(), 1e-9); + WorkloadManagementSettings workloadManagementSettings = new WorkloadManagementSettings(settings, cs); + workloadManagementSettings.setNodeLevelCpuRejectionThreshold(0.7); + assertEquals(0.7, workloadManagementSettings.getNodeLevelCpuRejectionThreshold(), 1e-9); } /** - * Tests the valid value for {@code query_group.node.cpu_rejection_threshold} + * Tests the valid value for {@code wlm.query_group.node.cpu_rejection_threshold} */ public void testValidNodeLevelCpuRejectionThresholdCase2() { Settings settings = Settings.builder().put(NODE_CPU_REJECTION_THRESHOLD_SETTING_NAME, 0.79).build(); ClusterSettings cs = new ClusterSettings(Settings.EMPTY, ClusterSettings.BUILT_IN_CLUSTER_SETTINGS); - QueryGroupServiceSettings queryGroupServiceSettings = new QueryGroupServiceSettings(settings, cs); - assertEquals(0.79, queryGroupServiceSettings.getNodeLevelCpuRejectionThreshold(), 1e-9); + WorkloadManagementSettings workloadManagementSettings = new WorkloadManagementSettings(settings, cs); + assertEquals(0.79, workloadManagementSettings.getNodeLevelCpuRejectionThreshold(), 1e-9); } /** - * Tests the invalid value for {@code query_group.node.cpu_rejection_threshold} + * Tests the invalid value for {@code wlm.query_group.node.cpu_rejection_threshold} * When the value is set more than {@literal 0.9} */ public void testInvalidNodeLevelCpuRejectionThresholdCase1() { Settings settings = Settings.builder().put(NODE_CPU_REJECTION_THRESHOLD_SETTING_NAME, 0.8).build(); ClusterSettings cs = new ClusterSettings(Settings.EMPTY, ClusterSettings.BUILT_IN_CLUSTER_SETTINGS); - QueryGroupServiceSettings queryGroupServiceSettings = new QueryGroupServiceSettings(settings, cs); - assertThrows(IllegalArgumentException.class, () -> queryGroupServiceSettings.setNodeLevelCpuRejectionThreshold(0.95)); + WorkloadManagementSettings workloadManagementSettings = new WorkloadManagementSettings(settings, cs); + assertThrows(IllegalArgumentException.class, () -> workloadManagementSettings.setNodeLevelCpuRejectionThreshold(0.95)); } /** - * Tests the invalid value for {@code query_group.node.cpu_rejection_threshold} - * When the value is set more than {@code query_group.node.cpu_cancellation_threshold} + * Tests the invalid value for {@code wlm.query_group.node.cpu_rejection_threshold} + * When the value is set more than {@code wlm.query_group.node.cpu_cancellation_threshold} */ public void testInvalidNodeLevelCpuRejectionThresholdCase2() { Settings settings = Settings.builder() @@ -94,46 +94,46 @@ public void testInvalidNodeLevelCpuRejectionThresholdCase2() { .put(NODE_CPU_CANCELLATION_THRESHOLD_SETTING_NAME, 0.8) .build(); ClusterSettings cs = new ClusterSettings(Settings.EMPTY, ClusterSettings.BUILT_IN_CLUSTER_SETTINGS); - QueryGroupServiceSettings queryGroupServiceSettings = new QueryGroupServiceSettings(settings, cs); - assertThrows(IllegalArgumentException.class, () -> queryGroupServiceSettings.setNodeLevelCpuRejectionThreshold(0.85)); + WorkloadManagementSettings workloadManagementSettings = new WorkloadManagementSettings(settings, cs); + assertThrows(IllegalArgumentException.class, () -> workloadManagementSettings.setNodeLevelCpuRejectionThreshold(0.85)); } /** - * Tests the valid value for {@code query_group.node.cpu_cancellation_threshold} + * Tests the valid value for {@code wlm.query_group.node.cpu_cancellation_threshold} */ public void testValidNodeLevelCpuCancellationThresholdCase1() { Settings settings = Settings.builder().put(NODE_CPU_CANCELLATION_THRESHOLD_SETTING_NAME, 0.8).build(); ClusterSettings cs = new ClusterSettings(Settings.EMPTY, ClusterSettings.BUILT_IN_CLUSTER_SETTINGS); - QueryGroupServiceSettings queryGroupServiceSettings = new QueryGroupServiceSettings(settings, cs); - assertEquals(0.8, queryGroupServiceSettings.getNodeLevelCpuRejectionThreshold(), 1e-9); + WorkloadManagementSettings workloadManagementSettings = new WorkloadManagementSettings(settings, cs); + assertEquals(0.8, workloadManagementSettings.getNodeLevelCpuRejectionThreshold(), 1e-9); } /** - * Tests the valid value for {@code query_group.node.cpu_cancellation_threshold} + * Tests the valid value for {@code wlm.query_group.node.cpu_cancellation_threshold} * Using setNodeLevelCpuCancellationThreshold function */ public void testValidNodeLevelCpuCancellationThresholdCase2() { Settings settings = Settings.builder().put(NODE_CPU_REJECTION_THRESHOLD_SETTING_NAME, 0.8).build(); ClusterSettings cs = new ClusterSettings(Settings.EMPTY, ClusterSettings.BUILT_IN_CLUSTER_SETTINGS); - QueryGroupServiceSettings queryGroupServiceSettings = new QueryGroupServiceSettings(settings, cs); - queryGroupServiceSettings.setNodeLevelCpuCancellationThreshold(0.83); - assertEquals(0.83, queryGroupServiceSettings.getNodeLevelCpuCancellationThreshold(), 1e-9); + WorkloadManagementSettings workloadManagementSettings = new WorkloadManagementSettings(settings, cs); + workloadManagementSettings.setNodeLevelCpuCancellationThreshold(0.83); + assertEquals(0.83, workloadManagementSettings.getNodeLevelCpuCancellationThreshold(), 1e-9); } /** - * Tests the invalid value for {@code query_group.node.cpu_cancellation_threshold} + * Tests the invalid value for {@code wlm.query_group.node.cpu_cancellation_threshold} * When the value is set more than {@literal 0.95} */ public void testInvalidNodeLevelCpuCancellationThresholdCase1() { Settings settings = Settings.builder().put(NODE_CPU_CANCELLATION_THRESHOLD_SETTING_NAME, 0.9).build(); ClusterSettings cs = new ClusterSettings(Settings.EMPTY, ClusterSettings.BUILT_IN_CLUSTER_SETTINGS); - QueryGroupServiceSettings queryGroupServiceSettings = new QueryGroupServiceSettings(settings, cs); - assertThrows(IllegalArgumentException.class, () -> queryGroupServiceSettings.setNodeLevelCpuCancellationThreshold(0.96)); + WorkloadManagementSettings workloadManagementSettings = new WorkloadManagementSettings(settings, cs); + assertThrows(IllegalArgumentException.class, () -> workloadManagementSettings.setNodeLevelCpuCancellationThreshold(0.96)); } /** - * Tests the invalid value for {@code query_group.node.cpu_cancellation_threshold} - * When the value is set less than {@code query_group.node.cpu_rejection_threshold} + * Tests the invalid value for {@code wlm.query_group.node.cpu_cancellation_threshold} + * When the value is set less than {@code wlm.query_group.node.cpu_rejection_threshold} */ public void testInvalidNodeLevelCpuCancellationThresholdCase2() { Settings settings = Settings.builder() @@ -141,46 +141,46 @@ public void testInvalidNodeLevelCpuCancellationThresholdCase2() { .put(NODE_CPU_CANCELLATION_THRESHOLD_SETTING_NAME, 0.8) .build(); ClusterSettings cs = new ClusterSettings(Settings.EMPTY, ClusterSettings.BUILT_IN_CLUSTER_SETTINGS); - QueryGroupServiceSettings queryGroupServiceSettings = new QueryGroupServiceSettings(settings, cs); - assertThrows(IllegalArgumentException.class, () -> queryGroupServiceSettings.setNodeLevelCpuCancellationThreshold(0.65)); + WorkloadManagementSettings workloadManagementSettings = new WorkloadManagementSettings(settings, cs); + assertThrows(IllegalArgumentException.class, () -> workloadManagementSettings.setNodeLevelCpuCancellationThreshold(0.65)); } /** - * Tests the valid value for {@code query_group.node.memory_cancellation_threshold} + * Tests the valid value for {@code wlm.query_group.node.memory_cancellation_threshold} */ public void testValidNodeLevelMemoryCancellationThresholdCase1() { Settings settings = Settings.builder().put(NODE_MEMORY_CANCELLATION_THRESHOLD_SETTING_NAME, 0.8).build(); ClusterSettings cs = new ClusterSettings(Settings.EMPTY, ClusterSettings.BUILT_IN_CLUSTER_SETTINGS); - QueryGroupServiceSettings queryGroupServiceSettings = new QueryGroupServiceSettings(settings, cs); - assertEquals(0.8, queryGroupServiceSettings.getNodeLevelMemoryCancellationThreshold(), 1e-9); + WorkloadManagementSettings workloadManagementSettings = new WorkloadManagementSettings(settings, cs); + assertEquals(0.8, workloadManagementSettings.getNodeLevelMemoryCancellationThreshold(), 1e-9); } /** - * Tests the valid value for {@code query_group.node.memory_cancellation_threshold} + * Tests the valid value for {@code wlm.query_group.node.memory_cancellation_threshold} * Using setNodeLevelMemoryCancellationThreshold function */ public void testValidNodeLevelMemoryCancellationThresholdCase2() { Settings settings = Settings.builder().put(NODE_MEMORY_REJECTION_THRESHOLD_SETTING_NAME, 0.8).build(); ClusterSettings cs = new ClusterSettings(Settings.EMPTY, ClusterSettings.BUILT_IN_CLUSTER_SETTINGS); - QueryGroupServiceSettings queryGroupServiceSettings = new QueryGroupServiceSettings(settings, cs); - queryGroupServiceSettings.setNodeLevelMemoryCancellationThreshold(0.83); - assertEquals(0.83, queryGroupServiceSettings.getNodeLevelMemoryCancellationThreshold(), 1e-9); + WorkloadManagementSettings workloadManagementSettings = new WorkloadManagementSettings(settings, cs); + workloadManagementSettings.setNodeLevelMemoryCancellationThreshold(0.83); + assertEquals(0.83, workloadManagementSettings.getNodeLevelMemoryCancellationThreshold(), 1e-9); } /** - * Tests the invalid value for {@code query_group.node.memory_cancellation_threshold} + * Tests the invalid value for {@code wlm.query_group.node.memory_cancellation_threshold} * When the value is set more than {@literal 0.95} */ public void testInvalidNodeLevelMemoryCancellationThresholdCase1() { Settings settings = Settings.builder().put(NODE_MEMORY_CANCELLATION_THRESHOLD_SETTING_NAME, 0.9).build(); ClusterSettings cs = new ClusterSettings(Settings.EMPTY, ClusterSettings.BUILT_IN_CLUSTER_SETTINGS); - QueryGroupServiceSettings queryGroupServiceSettings = new QueryGroupServiceSettings(settings, cs); - assertThrows(IllegalArgumentException.class, () -> queryGroupServiceSettings.setNodeLevelMemoryCancellationThreshold(0.96)); + WorkloadManagementSettings workloadManagementSettings = new WorkloadManagementSettings(settings, cs); + assertThrows(IllegalArgumentException.class, () -> workloadManagementSettings.setNodeLevelMemoryCancellationThreshold(0.96)); } /** - * Tests the invalid value for {@code query_group.node.memory_cancellation_threshold} - * When the value is set less than {@code query_group.node.memory_rejection_threshold} + * Tests the invalid value for {@code wlm.query_group.node.memory_cancellation_threshold} + * When the value is set less than {@code wlm.query_group.node.memory_rejection_threshold} */ public void testInvalidNodeLevelMemoryCancellationThresholdCase2() { Settings settings = Settings.builder() @@ -188,46 +188,46 @@ public void testInvalidNodeLevelMemoryCancellationThresholdCase2() { .put(NODE_MEMORY_CANCELLATION_THRESHOLD_SETTING_NAME, 0.8) .build(); ClusterSettings cs = new ClusterSettings(Settings.EMPTY, ClusterSettings.BUILT_IN_CLUSTER_SETTINGS); - QueryGroupServiceSettings queryGroupServiceSettings = new QueryGroupServiceSettings(settings, cs); - assertThrows(IllegalArgumentException.class, () -> queryGroupServiceSettings.setNodeLevelMemoryCancellationThreshold(0.65)); + WorkloadManagementSettings workloadManagementSettings = new WorkloadManagementSettings(settings, cs); + assertThrows(IllegalArgumentException.class, () -> workloadManagementSettings.setNodeLevelMemoryCancellationThreshold(0.65)); } /** - * Tests the valid value for {@code query_group.node.memory_rejection_threshold} + * Tests the valid value for {@code wlm.query_group.node.memory_rejection_threshold} */ public void testValidNodeLevelMemoryRejectionThresholdCase1() { Settings settings = Settings.builder().put(NODE_MEMORY_REJECTION_THRESHOLD_SETTING_NAME, 0.79).build(); ClusterSettings cs = new ClusterSettings(Settings.EMPTY, ClusterSettings.BUILT_IN_CLUSTER_SETTINGS); - QueryGroupServiceSettings queryGroupServiceSettings = new QueryGroupServiceSettings(settings, cs); - assertEquals(0.79, queryGroupServiceSettings.getNodeLevelMemoryRejectionThreshold(), 1e-9); + WorkloadManagementSettings workloadManagementSettings = new WorkloadManagementSettings(settings, cs); + assertEquals(0.79, workloadManagementSettings.getNodeLevelMemoryRejectionThreshold(), 1e-9); } /** - * Tests the valid value for {@code query_group.node.memory_rejection_threshold} + * Tests the valid value for {@code wlm.query_group.node.memory_rejection_threshold} * Using setNodeLevelMemoryRejectionThreshold function */ public void testValidNodeLevelMemoryRejectionThresholdCase2() { Settings settings = Settings.builder().put(NODE_MEMORY_CANCELLATION_THRESHOLD_SETTING_NAME, 0.9).build(); ClusterSettings cs = new ClusterSettings(Settings.EMPTY, ClusterSettings.BUILT_IN_CLUSTER_SETTINGS); - QueryGroupServiceSettings queryGroupServiceSettings = new QueryGroupServiceSettings(settings, cs); - queryGroupServiceSettings.setNodeLevelMemoryRejectionThreshold(0.86); - assertEquals(0.86, queryGroupServiceSettings.getNodeLevelMemoryRejectionThreshold(), 1e-9); + WorkloadManagementSettings workloadManagementSettings = new WorkloadManagementSettings(settings, cs); + workloadManagementSettings.setNodeLevelMemoryRejectionThreshold(0.86); + assertEquals(0.86, workloadManagementSettings.getNodeLevelMemoryRejectionThreshold(), 1e-9); } /** - * Tests the invalid value for {@code query_group.node.memory_rejection_threshold} + * Tests the invalid value for {@code wlm.query_group.node.memory_rejection_threshold} * When the value is set more than {@literal 0.9} */ public void testInvalidNodeLevelMemoryRejectionThresholdCase1() { Settings settings = Settings.builder().put(NODE_MEMORY_CANCELLATION_THRESHOLD_SETTING_NAME, 0.9).build(); ClusterSettings cs = new ClusterSettings(Settings.EMPTY, ClusterSettings.BUILT_IN_CLUSTER_SETTINGS); - QueryGroupServiceSettings queryGroupServiceSettings = new QueryGroupServiceSettings(settings, cs); - assertThrows(IllegalArgumentException.class, () -> queryGroupServiceSettings.setNodeLevelMemoryRejectionThreshold(0.92)); + WorkloadManagementSettings workloadManagementSettings = new WorkloadManagementSettings(settings, cs); + assertThrows(IllegalArgumentException.class, () -> workloadManagementSettings.setNodeLevelMemoryRejectionThreshold(0.92)); } /** - * Tests the invalid value for {@code query_group.node.memory_rejection_threshold} - * When the value is set more than {@code query_group.node.memory_cancellation_threshold} + * Tests the invalid value for {@code wlm.query_group.node.memory_rejection_threshold} + * When the value is set more than {@code wlm.query_group.node.memory_cancellation_threshold} */ public void testInvalidNodeLevelMemoryRejectionThresholdCase2() { Settings settings = Settings.builder() @@ -235,7 +235,7 @@ public void testInvalidNodeLevelMemoryRejectionThresholdCase2() { .put(NODE_MEMORY_CANCELLATION_THRESHOLD_SETTING_NAME, 0.8) .build(); ClusterSettings cs = new ClusterSettings(Settings.EMPTY, ClusterSettings.BUILT_IN_CLUSTER_SETTINGS); - QueryGroupServiceSettings queryGroupServiceSettings = new QueryGroupServiceSettings(settings, cs); - assertThrows(IllegalArgumentException.class, () -> queryGroupServiceSettings.setNodeLevelMemoryRejectionThreshold(0.85)); + WorkloadManagementSettings workloadManagementSettings = new WorkloadManagementSettings(settings, cs); + assertThrows(IllegalArgumentException.class, () -> workloadManagementSettings.setNodeLevelMemoryRejectionThreshold(0.85)); } }