diff options
Diffstat (limited to 'config-model/src/main/java/com/yahoo/searchdefinition')
-rw-r--r-- | config-model/src/main/java/com/yahoo/searchdefinition/derived/AttributeFields.java | 8 | ||||
-rw-r--r-- | config-model/src/main/java/com/yahoo/searchdefinition/derived/DerivedConfiguration.java | 10 |
2 files changed, 10 insertions, 8 deletions
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/AttributeFields.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/AttributeFields.java index 30cb0d9c07d..cd10263b0ff 100644 --- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/AttributeFields.java +++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/AttributeFields.java @@ -2,7 +2,6 @@ package com.yahoo.searchdefinition.derived; import com.yahoo.config.subscription.ConfigInstanceUtil; -import com.yahoo.document.DataType; import com.yahoo.searchdefinition.Schema; import com.yahoo.searchdefinition.document.Attribute; import com.yahoo.searchdefinition.document.Case; @@ -196,7 +195,7 @@ public class AttributeFields extends Derived implements AttributesConfig.Produce @Override public void getConfig(AttributesConfig.Builder builder) { //TODO This is just to get some exporting tests to work, Should be undone and removed - getConfig(builder, FieldSet.ALL, 77777); + getConfig(builder, FieldSet.ALL, 77777, false); } private boolean isAttributeInFieldSet(Attribute attribute, FieldSet fs) { @@ -302,11 +301,14 @@ public class AttributeFields extends Derived implements AttributesConfig.Produce return AttributesConfig.Attribute.Match.UNCASED; } - public void getConfig(AttributesConfig.Builder builder, FieldSet fs, long maxUnCommittedMemory) { + public void getConfig(AttributesConfig.Builder builder, FieldSet fs, long maxUnCommittedMemory, boolean enableBitVectors) { for (Attribute attribute : attributes.values()) { if (isAttributeInFieldSet(attribute, fs)) { AttributesConfig.Attribute.Builder attrBuilder = getConfig(attribute.getName(), attribute, false); attrBuilder.maxuncommittedmemory(maxUnCommittedMemory); + if (enableBitVectors && attribute.isFastSearch()) { + attrBuilder.enablebitvectors(true); + } builder.attribute(attrBuilder); } } diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/derived/DerivedConfiguration.java b/config-model/src/main/java/com/yahoo/searchdefinition/derived/DerivedConfiguration.java index f8c44797884..0c7c507f32d 100644 --- a/config-model/src/main/java/com/yahoo/searchdefinition/derived/DerivedConfiguration.java +++ b/config-model/src/main/java/com/yahoo/searchdefinition/derived/DerivedConfiguration.java @@ -46,6 +46,7 @@ public class DerivedConfiguration implements AttributesConfig.Producer { private ImportedFields importedFields; private final QueryProfileRegistry queryProfiles; private final long maxUncommittedMemory; + private final boolean enableBitVectors; /** * Creates a complete derived configuration from a search definition. @@ -86,6 +87,7 @@ public class DerivedConfiguration implements AttributesConfig.Producer { this.schema = schema; this.queryProfiles = queryProfiles; this.maxUncommittedMemory = deployProperties.featureFlags().maxUnCommittedMemory(); + this.enableBitVectors = deployProperties.featureFlags().enableBitVectors(); if ( ! schema.isDocumentsOnly()) { streamingFields = new VsmFields(schema); streamingSummary = new VsmSummary(schema); @@ -146,10 +148,8 @@ public class DerivedConfiguration implements AttributesConfig.Producer { Writer writer = null; try { writer = IOUtils.createWriter(fileName, false); - if (writer != null) { - writer.write(instance.toString()); - writer.write("\n"); - } + writer.write(instance.toString()); + writer.write("\n"); } finally { if (writer != null) { IOUtils.closeWriter(writer); @@ -171,7 +171,7 @@ public class DerivedConfiguration implements AttributesConfig.Producer { } public void getConfig(AttributesConfig.Builder builder, AttributeFields.FieldSet fs) { - attributeFields.getConfig(builder, fs, maxUncommittedMemory); + attributeFields.getConfig(builder, fs, maxUncommittedMemory, enableBitVectors); } public IndexingScript getIndexingScript() { |