From 9016fa2b7f0e42bbf4097f6678a607d28858b14b Mon Sep 17 00:00:00 2001 From: Geir Storli Date: Thu, 9 Jul 2020 14:19:26 +0000 Subject: Add support for matched-elements-only for array and weighted set attributes. --- searchsummary/src/vespa/searchsummary/docsummary/docsumconfig.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'searchsummary/src') diff --git a/searchsummary/src/vespa/searchsummary/docsummary/docsumconfig.cpp b/searchsummary/src/vespa/searchsummary/docsummary/docsumconfig.cpp index f41ada8b2e8..1a269e556d6 100644 --- a/searchsummary/src/vespa/searchsummary/docsummary/docsumconfig.cpp +++ b/searchsummary/src/vespa/searchsummary/docsummary/docsumconfig.cpp @@ -102,7 +102,11 @@ DynamicDocsumConfig::createFieldWriter(const string & fieldName, const string & string source_field = argument.empty() ? fieldName : argument; if (getEnvironment() && getEnvironment()->getAttributeManager()) { auto attr_ctx = getEnvironment()->getAttributeManager()->createContext(); - fieldWriter = AttributeCombinerDFW::create(source_field, *attr_ctx, true, matching_elems_fields); + if (attr_ctx->getAttribute(source_field) != nullptr) { + fieldWriter = AttributeDFWFactory::create(*getEnvironment()->getAttributeManager(), source_field, true, matching_elems_fields); + } else { + fieldWriter = AttributeCombinerDFW::create(source_field, *attr_ctx, true, matching_elems_fields); + } rc = static_cast(fieldWriter); } } else if (overrideName == "matchedelementsfilter") { -- cgit v1.2.3