aboutsummaryrefslogtreecommitdiffstats
path: root/config-model/src/main/java/com/yahoo/searchdefinition/processing/ImplicitSummaries.java
diff options
context:
space:
mode:
authorGeir Storli <geirst@oath.com>2018-06-06 15:18:53 +0200
committerGeir Storli <geirst@oath.com>2018-06-06 15:18:53 +0200
commitdd5ae85a9c1fe1b685fa673359ed367bd5d9fdb5 (patch)
tree60812fda3194d4631d552191498764920967365c /config-model/src/main/java/com/yahoo/searchdefinition/processing/ImplicitSummaries.java
parente679cfae1c200a230de880eeb0855c5733ffa1a7 (diff)
Add new summary transform (attributecombiner) for complex fields that are represented by only struct field attributes.
Diffstat (limited to 'config-model/src/main/java/com/yahoo/searchdefinition/processing/ImplicitSummaries.java')
-rw-r--r--config-model/src/main/java/com/yahoo/searchdefinition/processing/ImplicitSummaries.java6
1 files changed, 6 insertions, 0 deletions
diff --git a/config-model/src/main/java/com/yahoo/searchdefinition/processing/ImplicitSummaries.java b/config-model/src/main/java/com/yahoo/searchdefinition/processing/ImplicitSummaries.java
index 9f4a63b8a9a..b51524b7e62 100644
--- a/config-model/src/main/java/com/yahoo/searchdefinition/processing/ImplicitSummaries.java
+++ b/config-model/src/main/java/com/yahoo/searchdefinition/processing/ImplicitSummaries.java
@@ -14,6 +14,8 @@ import com.yahoo.vespa.documentmodel.SummaryField;
import com.yahoo.vespa.documentmodel.SummaryTransform;
import com.yahoo.vespa.model.container.search.QueryProfiles;
+import static com.yahoo.searchdefinition.document.ComplexAttributeFieldUtils.isComplexFieldWithOnlyStructFieldAttributes;
+
/**
* Makes implicitly defined summaries into explicit summaries
*
@@ -81,6 +83,10 @@ public class ImplicitSummaries extends Processor {
}
}
+ if (addedSummaryField != null && isComplexFieldWithOnlyStructFieldAttributes(field)) {
+ addedSummaryField.setTransform(SummaryTransform.ATTRIBUTECOMBINER);
+ }
+
// Position attributes
if (field.doesSummarying()) {
for (Attribute attribute : field.getAttributes().values()) {