summaryrefslogtreecommitdiffstats
path: root/searchsummary/src
diff options
context:
space:
mode:
authorTor Egge <Tor.Egge@broadpark.no>2016-08-23 15:58:43 +0200
committerGitHub <noreply@github.com>2016-08-23 15:58:43 +0200
commit222372ada093a46f56d5e37d5456df78d178321d (patch)
tree32a7afb72ea256dd8330f0ad24b7c14d12d0b895 /searchsummary/src
parent55e5a91901109161186e05d3a6e959e06958bbba (diff)
parenta28d76069c86ec5e1e02075f96b314f3947b8f2f (diff)
Merge pull request #446 from yahoo/geirst/fix-bolding-when-advanced-query-terms-are-used
Make sure unhandled query items are ignored by juniper instead of makā€¦
Diffstat (limited to 'searchsummary/src')
-rw-r--r--searchsummary/src/vespa/searchsummary/docsummary/dynamicteaserdfw.cpp23
1 files changed, 12 insertions, 11 deletions
diff --git a/searchsummary/src/vespa/searchsummary/docsummary/dynamicteaserdfw.cpp b/searchsummary/src/vespa/searchsummary/docsummary/dynamicteaserdfw.cpp
index 8c2c0b2e65c..9a9041ea295 100644
--- a/searchsummary/src/vespa/searchsummary/docsummary/dynamicteaserdfw.cpp
+++ b/searchsummary/src/vespa/searchsummary/docsummary/dynamicteaserdfw.cpp
@@ -216,10 +216,6 @@ JuniperQueryAdapter::Traverse(juniper::IQueryVisitor *v) const
case search::ParseItem::ITEM_WEAK_AND:
case search::ParseItem::ITEM_EQUIV:
case search::ParseItem::ITEM_WORD_ALTERNATIVES:
- // XXX unhandled
- // case search::ParseItem::ITEM_WAND:
- // case search::ParseItem::ITEM_WEIGHTED_SET:
- // case search::ParseItem::ITEM_DOT_PRODUCT:
if (!v->VisitOR(&item, iterator.getArity()))
rc = SkipItem(&iterator);
break;
@@ -238,8 +234,6 @@ JuniperQueryAdapter::Traverse(juniper::IQueryVisitor *v) const
case search::ParseItem::ITEM_TERM:
case search::ParseItem::ITEM_EXACTSTRINGTERM:
case search::ParseItem::ITEM_PURE_WEIGHTED_STRING:
- // XXX unhandled
- // case search::ParseItem::ITEM_PURE_WEIGHTED_LONG:
iterator.getTerm(&buf, &buflen);
v->VisitKeyword(&item, buf, buflen, false, isSpecialToken);
break;
@@ -275,8 +269,6 @@ JuniperQueryAdapter::Traverse(juniper::IQueryVisitor *v) const
break;
case search::ParseItem::ITEM_PREFIXTERM:
case search::ParseItem::ITEM_SUBSTRINGTERM:
- // XXX unhandled
- // case search::ParseItem::ITEM_SUFFIXTERM:
iterator.getTerm(&buf, &buflen);
v->VisitKeyword(&item, buf, buflen, true, isSpecialToken);
break;
@@ -296,9 +288,18 @@ JuniperQueryAdapter::Traverse(juniper::IQueryVisitor *v) const
if (!v->VisitWITHIN(&item, iterator.getArity(),iterator.getArg1()))
rc = SkipItem(&iterator);
break;
- // XXX unhandled
- // case search::ParseItem::ITEM_REGEXP:
- // case search::ParseItem::ITEM_PREDICATE_QUERY:
+ // Unhandled items are just ignored by juniper
+ case search::ParseItem::ITEM_WAND:
+ case search::ParseItem::ITEM_WEIGHTED_SET:
+ case search::ParseItem::ITEM_DOT_PRODUCT:
+ case search::ParseItem::ITEM_PURE_WEIGHTED_LONG:
+ case search::ParseItem::ITEM_SUFFIXTERM:
+ case search::ParseItem::ITEM_REGEXP:
+ case search::ParseItem::ITEM_PREDICATE_QUERY:
+ if (!v->VisitOther(&item, iterator.getArity())) {
+ rc = SkipItem(&iterator);
+ }
+ break;
default:
rc = false;
}