There was a Solr release with a bug that required that you put a space
between the left parenthesis and the "*:*". The edismax parsed query here
indicates that the "*:*" has not parsed properly.

You have "area", but in your jira you had a range query.

-- Jack Krupansky

On Mon, Mar 16, 2015 at 6:42 PM, Arsen <barracuda...@mail.ru> wrote:

> Hello,
>
> Found discrepancy between LuceneQParser and ExtendedDismaxQParser when
> executing following query:
> ((*:* AND -area) OR area:[100 TO 300]) AND objectId:40105451
>
> When executing it through Solr Admin panel and placing query in "q" field
> I having following debug output for LuceneQParser
> ----------------------------------
> "debug": {
>     "rawquerystring": "((*:* AND -area) OR area:[100 TO 300]) AND
> objectId:40105451",
>     "querystring": "((*:* AND -area) OR area:[100 TO 300]) AND
> objectId:40105451",
>     "parsedquery": "+((+MatchAllDocsQuery(*:*) -text:area) area:[100 TO
> 300]) +objectId:40105451",
>     "parsedquery_toString": "+((+*:* -text:area) area:[100 TO 300])
> +objectId: \u0001\u0000\u0000\u0000\u0000\u0000\u0013\u000fkk",
>     "explain": {
>       "40105451": "\n14.3511 = (MATCH) sum of:\n  0.034590416 = (MATCH)
> product of:\n    0.06918083 = (MATCH) sum of:\n      0.06918083 = (MATCH)
> sum of:\n        0.06918083 = (MATCH) MatchAllDocsQuery, product of:\n
>     0.06918083 = queryNorm\n    0.5 = coord(1/2)\n  14.316509 = (MATCH)
> weight(objectId: \u0001\u0000\u0000\u0000\u0000\u0000\u0013\u000fkk in
> 1109978) [DefaultSimilarity], result of:\n    14.316509 =
> score(doc=1109978,freq=1.0), product of:\n      0.9952025 = queryWeight,
> product of:\n        14.385524 = idf(docFreq=1, maxDocs=1301035)\n
> 0.06918083 = queryNorm\n      14.385524 = fieldWeight in 1109978, product
> of:\n        1.0 = tf(freq=1.0), with freq of:\n          1.0 =
> termFreq=1.0\n        14.385524 = idf(docFreq=1, maxDocs=1301035)\n
> 1.0 = fieldNorm(doc=1109978)\n"
>     },
> ----------------------------------
> So, one object found which is expectable
>
> For ExtendedDismaxQParser (only difference is checkbox "edismax" checked)
> I am seeing this output
> ----------------------------------
> "debug": {
>     "rawquerystring": "((*:* AND -area) OR area:[100 TO 300]) AND
> objectId:40105451",
>     "querystring": "((*:* AND -area) OR area:[100 TO 300]) AND
> objectId:40105451",
>     "parsedquery": "(+(+((+DisjunctionMaxQuery((text:*\\:*))
> -DisjunctionMaxQuery((text:area))) area:[100 TO 300])
> +objectId:40105451))/no_coord",
>     "parsedquery_toString": "+(+((+(text:*\\:*) -(text:area)) area:[100 TO
> 300]) +objectId: \u0001\u0000\u0000\u0000\u0000\u0000\u0013\u000fkk)",
>     "explain": {},
> ----------------------------------
> oops, no objects found!
>
> I hastened to fill https://issues.apache.org/jira/browse/SOLR-7249
> (sorry, my bad)
> You may refer to it for additional info (not going to duplicate it here)
>
> Thanks
>
> --
> Best regards,
>  Arsen                          mailto:barracuda...@mail.ru
>
>

Reply via email to