summaryrefslogtreecommitdiffstats
path: root/container-search/src/main/java/com/yahoo/prelude/query/parser
diff options
context:
space:
mode:
authorJon Bratseth <bratseth@verizonmedia.com>2019-04-12 12:54:11 +0200
committerJon Bratseth <bratseth@verizonmedia.com>2019-04-12 12:54:11 +0200
commit08be9a163a0861901bd832f2d0cbd1c0d4a05ddf (patch)
tree0b18706b1e43135fcb10a05b5cf1ad59dae5bc5e /container-search/src/main/java/com/yahoo/prelude/query/parser
parentdda32fff6ffc7ffd4dd3686cfd940c0c132085b6 (diff)
Correct heuristic for -a:b
Diffstat (limited to 'container-search/src/main/java/com/yahoo/prelude/query/parser')
-rw-r--r--container-search/src/main/java/com/yahoo/prelude/query/parser/AllParser.java5
1 files changed, 4 insertions, 1 deletions
diff --git a/container-search/src/main/java/com/yahoo/prelude/query/parser/AllParser.java b/container-search/src/main/java/com/yahoo/prelude/query/parser/AllParser.java
index 499cacd89c5..72ee4ae2c12 100644
--- a/container-search/src/main/java/com/yahoo/prelude/query/parser/AllParser.java
+++ b/container-search/src/main/java/com/yahoo/prelude/query/parser/AllParser.java
@@ -127,8 +127,11 @@ public class AllParser extends SimpleParser {
// Heuristic overdrive engaged!
// Interpret -N as a positive item matching a negative number (by backtracking out of this)
+ // but not if there is an explicit index (such as -a:b)
// but interpret --N as a negative item matching a negative number
- if ( item instanceof IntItem && ! ((IntItem)item).getNumber().startsWith(("-")))
+ if ( item instanceof IntItem &&
+ ((IntItem)item).getIndexName().isEmpty() &&
+ ! ((IntItem)item).getNumber().startsWith(("-")))
item = null;
return item;