diff options
author | Tor Egge <Tor.Egge@broadpark.no> | 2016-08-23 15:58:43 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2016-08-23 15:58:43 +0200 |
commit | 222372ada093a46f56d5e37d5456df78d178321d (patch) | |
tree | 32a7afb72ea256dd8330f0ad24b7c14d12d0b895 /searchsummary/src | |
parent | 55e5a91901109161186e05d3a6e959e06958bbba (diff) | |
parent | a28d76069c86ec5e1e02075f96b314f3947b8f2f (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.cpp | 23 |
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; } |