diff options
author | Jon Bratseth <bratseth@verizonmedia.com> | 2020-01-20 22:31:23 +0100 |
---|---|---|
committer | Jon Bratseth <bratseth@verizonmedia.com> | 2020-01-20 22:31:23 +0100 |
commit | ab060ea711c4c70d1108230fcacc183ab5edb702 (patch) | |
tree | b0ddd46bcd57b5fa3dfa15db5844790ab5ce3e10 | |
parent | 8c772566c23fb22ad4e84d76127d6f1dab8b716f (diff) |
Add attribute types only to the profiles of the same search definition
5 files changed, 42 insertions, 1 deletions
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/RankProfileTypeSettingsProcessor.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/RankProfileTypeSettingsProcessor.java index 58ef47b7ba9..441d1b5b8df 100644 --- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/RankProfileTypeSettingsProcessor.java +++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/multifieldresolver/RankProfileTypeSettingsProcessor.java @@ -69,7 +69,7 @@ public class RankProfileTypeSettingsProcessor extends Processor { } private void addAttributeTypeToRankProfiles(String attributeName, String attributeType) { - for (RankProfile profile : rankProfileRegistry.all()) { + for (RankProfile profile : rankProfileRegistry.rankProfilesOf(search)) { profile.addAttributeType(attributeName, attributeType); } } diff --git a/config-model/src/test/derived/tensor2/first.sd b/config-model/src/test/derived/tensor2/first.sd new file mode 100644 index 00000000000..80554572503 --- /dev/null +++ b/config-model/src/test/derived/tensor2/first.sd @@ -0,0 +1,8 @@ +search first { + document first { + field first_field type tensor(first[10]) { + indexing: summary | attribute + } + } +} + diff --git a/config-model/src/test/derived/tensor2/rank-profiles.cfg b/config-model/src/test/derived/tensor2/rank-profiles.cfg new file mode 100644 index 00000000000..7e087832042 --- /dev/null +++ b/config-model/src/test/derived/tensor2/rank-profiles.cfg @@ -0,0 +1,14 @@ +rankprofile[].name "default" +rankprofile[].fef.property[].name "vespa.type.attribute.second_field" +rankprofile[].fef.property[].value "tensor(second[10])" +rankprofile[].name "unranked" +rankprofile[].fef.property[].name "vespa.rank.firstphase" +rankprofile[].fef.property[].value "value(0)" +rankprofile[].fef.property[].name "vespa.hitcollector.heapsize" +rankprofile[].fef.property[].value "0" +rankprofile[].fef.property[].name "vespa.hitcollector.arraysize" +rankprofile[].fef.property[].value "0" +rankprofile[].fef.property[].name "vespa.dump.ignoredefaultfeatures" +rankprofile[].fef.property[].value "true" +rankprofile[].fef.property[].name "vespa.type.attribute.second_field" +rankprofile[].fef.property[].value "tensor(second[10])" diff --git a/config-model/src/test/derived/tensor2/second.sd b/config-model/src/test/derived/tensor2/second.sd new file mode 100644 index 00000000000..ace0540c8bd --- /dev/null +++ b/config-model/src/test/derived/tensor2/second.sd @@ -0,0 +1,7 @@ +search second { + document second { + field second_field type tensor(second[10]) { + indexing: summary | attribute + } + } +} diff --git a/config-model/src/test/java/com/yahoo/searchdefinition/derived/ExportingTestCase.java b/config-model/src/test/java/com/yahoo/searchdefinition/derived/ExportingTestCase.java index ebd2c752d5e..61065cd4bcc 100644 --- a/config-model/src/test/java/com/yahoo/searchdefinition/derived/ExportingTestCase.java +++ b/config-model/src/test/java/com/yahoo/searchdefinition/derived/ExportingTestCase.java @@ -1,6 +1,7 @@ // Copyright 2017 Yahoo Holdings. Licensed under the terms of the Apache 2.0 license. See LICENSE in the project root. package com.yahoo.searchdefinition.derived; +import com.yahoo.searchdefinition.SearchBuilder; import com.yahoo.searchdefinition.parser.ParseException; import org.junit.Test; @@ -138,4 +139,15 @@ public class ExportingTestCase extends AbstractExportingTestCase { assertCorrectDeriving("tensor"); } + @Test + public void testTensor2() throws IOException, ParseException { + String dir = "src/test/derived/tensor2/"; + SearchBuilder builder = new SearchBuilder(); + builder.importFile(dir + "first.sd"); + builder.importFile(dir + "second.sd"); + builder.build(); + derive("tensor2", builder, builder.getSearch("second")); + assertCorrectConfigFiles("tensor2"); + } + } |