diff options
author | Jon Bratseth <bratseth@verizonmedia.com> | 2019-04-12 12:54:11 +0200 |
---|---|---|
committer | Jon Bratseth <bratseth@verizonmedia.com> | 2019-04-12 12:54:11 +0200 |
commit | 08be9a163a0861901bd832f2d0cbd1c0d4a05ddf (patch) | |
tree | 0b18706b1e43135fcb10a05b5cf1ad59dae5bc5e /container-search/src/main/java/com/yahoo/prelude/query/parser | |
parent | dda32fff6ffc7ffd4dd3686cfd940c0c132085b6 (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.java | 5 |
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; |