Hello Jack,

Jack, you made "my day" for me.

Indeed, when I inserted space between "(" and "*:*" sings - issue
disappeared. I believe, that according to debug - "space" bug forced
both parsers to treat part in first brackets as text, right?

It looks like https://issues.apache.org/jira/browse/SOLR-7249 can be
closed (root cause is another bug). Let me know if anything more
needed from my side (should I add comment to it?).

> 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.

You are right, I played with your suggestions about "area" parameter,
was running different variations of it, but they all give same result.
So, I left most recent variant (which was shorter, sorry).

Thanks again for your help!
Have a nice day.

> -- 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
>>
>>



-- 
Best regards,
 Arsen                            mailto:barracuda...@mail.ru

Reply via email to