aboutsummaryrefslogtreecommitdiffstats
path: root/config-model/src/main/java/com/yahoo/schema/derived/SummaryClass.java
diff options
context:
space:
mode:
authorGeir Storli <geirst@yahooinc.com>2022-09-13 11:24:10 +0000
committerGeir Storli <geirst@yahooinc.com>2022-09-13 12:32:36 +0000
commit65ecb02c12d3f87ee3839bdddd14ce969a40d7ce (patch)
treec193afa889d34108c88d7dcec7be4d54a5c58516 /config-model/src/main/java/com/yahoo/schema/derived/SummaryClass.java
parentcf494ca75f3dc3bd66ef90a8438a20a5dd447452 (diff)
Allow dynamic transforms on array<string> summary fields.
Diffstat (limited to 'config-model/src/main/java/com/yahoo/schema/derived/SummaryClass.java')
-rw-r--r--config-model/src/main/java/com/yahoo/schema/derived/SummaryClass.java11
1 files changed, 4 insertions, 7 deletions
diff --git a/config-model/src/main/java/com/yahoo/schema/derived/SummaryClass.java b/config-model/src/main/java/com/yahoo/schema/derived/SummaryClass.java
index b8aa89fc82a..b9355693da8 100644
--- a/config-model/src/main/java/com/yahoo/schema/derived/SummaryClass.java
+++ b/config-model/src/main/java/com/yahoo/schema/derived/SummaryClass.java
@@ -5,6 +5,7 @@ import com.yahoo.config.application.api.DeployLogger;
import com.yahoo.document.DataType;
import com.yahoo.prelude.fastsearch.DocsumDefinitionSet;
import com.yahoo.schema.Schema;
+import com.yahoo.schema.processing.DynamicSummaryTransformUtils;
import com.yahoo.vespa.config.search.SummaryConfig;
import com.yahoo.vespa.documentmodel.DocumentSummary;
import com.yahoo.vespa.documentmodel.SummaryField;
@@ -158,14 +159,10 @@ public class SummaryClass extends Derived {
summaryField.getTransform() == SummaryTransform.MATCHED_ATTRIBUTE_ELEMENTS_FILTER)
{
return summaryField.getSingleSource();
+ } else if (summaryField.getTransform().isDynamic()) {
+ return DynamicSummaryTransformUtils.getSource(summaryField);
} else {
- // Note: Currently source mapping is handled in the indexing statement,
- // by creating a summary field for each of the values
- // This works, but is suboptimal. We could consolidate to a minimal set and
- // use the right value from the minimal set as the third parameter here,
- // and add "override" commands to multiple static values
- boolean useFieldNameAsArgument = summaryField.getTransform().isDynamic();
- return useFieldNameAsArgument ? summaryField.getName() : "";
+ return "";
}
}