diff options
Diffstat (limited to 'config-model/src/main/java/com/yahoo')
3 files changed, 21 insertions, 2 deletions
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 c2d6adddeed..0cefcc51627 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 @@ -86,6 +86,7 @@ public class TestProperties implements ModelContext.Properties, ModelContext.Fea private boolean symmetricPutAndActivateReplicaSelection = false; private boolean enforceStrictlyIncreasingClusterStateVersions = false; private boolean launchApplicationAthenzService = false; + private boolean distributionConfigFromClusterController = false; @Override public ModelContext.FeatureFlags featureFlags() { return this; } @Override public boolean multitenant() { return multitenant; } @@ -146,6 +147,7 @@ public class TestProperties implements ModelContext.Properties, ModelContext.Fea @Override public boolean symmetricPutAndActivateReplicaSelection() { return symmetricPutAndActivateReplicaSelection; } @Override public boolean enforceStrictlyIncreasingClusterStateVersions() { return enforceStrictlyIncreasingClusterStateVersions; } @Override public boolean launchApplicationAthenzService() { return launchApplicationAthenzService; } + @Override public boolean distributionConfigFromClusterController() { return distributionConfigFromClusterController; } public TestProperties sharedStringRepoNoReclaim(boolean sharedStringRepoNoReclaim) { this.sharedStringRepoNoReclaim = sharedStringRepoNoReclaim; @@ -396,6 +398,11 @@ public class TestProperties implements ModelContext.Properties, ModelContext.Fea return this; } + public TestProperties setDistributionConfigFromClusterController(boolean configFromCc) { + this.distributionConfigFromClusterController = configFromCc; + return this; + } + public static class Spec implements ConfigServerSpec { private final String hostName; diff --git a/config-model/src/main/java/com/yahoo/vespa/model/container/search/ContainerSearch.java b/config-model/src/main/java/com/yahoo/vespa/model/container/search/ContainerSearch.java index a71d1025ece..af4f23ad47c 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/container/search/ContainerSearch.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/container/search/ContainerSearch.java @@ -50,6 +50,7 @@ public class ContainerSearch extends ContainerSubsystem<SearchChains> implements private final List<SearchCluster> searchClusters = new LinkedList<>(); private final Collection<String> schemasWithGlobalPhase; private final ApplicationPackage app; + private final boolean useLegacyWandQueryParsing; private QueryProfiles queryProfiles; private SemanticRules semanticRules; @@ -60,6 +61,7 @@ public class ContainerSearch extends ContainerSubsystem<SearchChains> implements this.schemasWithGlobalPhase = getSchemasWithGlobalPhase(deployState); this.app = deployState.getApplicationPackage(); this.owningCluster = cluster; + this.useLegacyWandQueryParsing = deployState.featureFlags().useLegacyWandQueryParsing(); owningCluster.addComponent(Component.fromClassAndBundle(CompiledQueryProfileRegistry.class, SEARCH_AND_DOCPROC_BUNDLE)); owningCluster.addComponent(Component.fromClassAndBundle(com.yahoo.search.schema.SchemaInfo.class, SEARCH_AND_DOCPROC_BUNDLE)); @@ -169,6 +171,11 @@ public class ContainerSearch extends ContainerSubsystem<SearchChains> implements @Override public void getConfig(QrSearchersConfig.Builder builder) { searchClusters.forEach(sc -> builder.searchcluster(sc.getQrSearcherConfig())); + if (useLegacyWandQueryParsing) { + builder.parserSettings(cfg -> cfg + .keepImplicitAnds(true) + .keepSegmentAnds(true)); + } } } diff --git a/config-model/src/main/java/com/yahoo/vespa/model/content/ClusterControllerConfig.java b/config-model/src/main/java/com/yahoo/vespa/model/content/ClusterControllerConfig.java index 14a4af67ed7..c6e251c2e1d 100644 --- a/config-model/src/main/java/com/yahoo/vespa/model/content/ClusterControllerConfig.java +++ b/config-model/src/main/java/com/yahoo/vespa/model/content/ClusterControllerConfig.java @@ -54,7 +54,8 @@ public class ClusterControllerConfig extends AnyConfigProducer implements Fleetc return new ClusterControllerConfig(ancestor, clusterName, tuningConfig, - resourceLimits); + resourceLimits, + deployState.featureFlags().distributionConfigFromClusterController()); } } @@ -62,15 +63,18 @@ public class ClusterControllerConfig extends AnyConfigProducer implements Fleetc private final String clusterName; private final ClusterControllerTuning tuning; private final ResourceLimits resourceLimits; + private final boolean distributionConfigFromClusterController; private ClusterControllerConfig(TreeConfigProducer<?> parent, String clusterName, ClusterControllerTuning tuning, - ResourceLimits resourceLimits) { + ResourceLimits resourceLimits, + boolean distributionConfigFromClusterController) { super(parent, "fleetcontroller"); this.clusterName = clusterName; this.tuning = tuning; this.resourceLimits = resourceLimits; + this.distributionConfigFromClusterController = distributionConfigFromClusterController; } @Override @@ -86,6 +90,7 @@ public class ClusterControllerConfig extends AnyConfigProducer implements Fleetc builder.index(0); builder.cluster_name(clusterName); builder.fleet_controller_count(getChildren().size()); + builder.include_distribution_config_in_cluster_state_bundle(distributionConfigFromClusterController); tuning.initProgressTime.ifPresent(i -> builder.init_progress_time((int) i.getMilliSeconds())); tuning.transitionTime.ifPresent(t -> builder.storage_transition_time((int) t.getMilliSeconds())); |