Yes hoss, it only convert to the range query when there is two token only,,BTW thanks for raising the issue
On 11-May-2017 5:38 AM, "Chris Hostetter" <hossman_luc...@fucit.org> wrote: > : I'm facing a issue when i'm querying the Solr > : my query is "xiomi Mi 5 -white [64GB/ 3GB]" > ... > : +(((Synonym(nameSearch:xiaomi nameSearch:xiomi)) (nameSearch:mi) > : (nameSearch:5) -(Synonym(nameSearch:putih > : nameSearch:white))*(nameSearch:[64gb/ TO 3gb])*)~4) > ... > : Now due to automatic conversion of query to Range query i'm not able > : to find the result > ... > : Solr Version-6.4.2 > : Parser- edismax > > That's really suprising to me -- but i can reproduce what you're > describing ... not sure if the "implicit" assumption thta you wanted a > range query is intentional or a bug -- but it's certainly weird so i've > file a jira: https://issues.apache.org/jira/browse/LUCENE-7821 > > FWIW: It's not actaully anything special about edismax that's causing that > to be parsed as a range query -- it seems that the underlying grammer > (used by both the lucene & edismax solr QParsers) treats the "TO" as > optional in a range query, so the remaining 2 "terms" inside the square > brackets are considered the low/high ... if you'd had more then 2 terms > (ie: "foo [64gb/ 3gb bar]") it wouldn't have parsed as a range query -- > which means edismax would have fallen back to rerying to parse it with > automatic escaping. > > > > -Hoss > http://www.lucidworks.com/ >