You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Jan Høydahl (JIRA)" <ji...@apache.org> on 2016/03/31 22:35:25 UTC

[jira] [Comment Edited] (SOLR-8812) ExtendedDismaxQParser (edismax) ignores Boolean OR when q.op=AND

    [ https://issues.apache.org/jira/browse/SOLR-8812?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15220618#comment-15220618 ] 

Jan Høydahl edited comment on SOLR-8812 at 3/31/16 8:34 PM:
------------------------------------------------------------

bq. I can make this not a blocker since we have a work-around
Isn't it premature to proclaim a generic workaround, at least without more test coverage to prove so? 
The majority of edismax users have not upgraded to 5.5.0 yet, and for many of them, existing applications and existing queries will start producing wrong results. If there is a generic workaround to add {{mm=0}} in solrconfig.xml to get back the correct behavior, we can declare a workaround. But we cannot assume it is acceptable for people to write custom logic to conditionally change the request depending on how the user-entered query looks like. 
That's why I lean towards reverting, since a revert will only affect the very few 5.5.0 users who rely upon the new stuff. And they have a workaround in building a custom Solr version with the patch, or waiting until 5.5.x or 6.x where a proper fix is introduced.


was (Author: janhoy):
bq. I can make this not a blocker since we have a work-around
Isn't it premature to proclaim a generic workaround, at least without more test coverage to prove so? 
The majority of edismax users have not upgraded to 5.5.0 yet, and for many of them, existing applications and existing queries will start producing wrong results. If there is a generic workaround to add {{mm=0}} in solrconfig.xml to get back the correct behavior, we can declare a workaround. But we cannot assume it is acceptable for people to write custom logic to conditionally change the request depending on how the user-entered query looks like.

> ExtendedDismaxQParser (edismax) ignores Boolean OR when q.op=AND
> ----------------------------------------------------------------
>
>                 Key: SOLR-8812
>                 URL: https://issues.apache.org/jira/browse/SOLR-8812
>             Project: Solr
>          Issue Type: Bug
>          Components: query parsers
>    Affects Versions: 5.5
>            Reporter: Ryan Steinberg
>            Assignee: Erick Erickson
>            Priority: Blocker
>             Fix For: 6.0, 5.5.1
>
>         Attachments: SOLR-8812.patch
>
>
> The edismax parser ignores Boolean OR in queries when q.op=AND. This behavior is new to Solr 5.5.0 and an unexpected major change.
> Example:
>       "q": "id:12345 OR zzzzzzzzzz",
>       "defType": "edismax",
>       "q.op": "AND",
> where "12345" is a known document ID and "zzzzzzzzzz" is a string NOT present in my data
> Version 5.5.0 produces zero results:
>     "rawquerystring": "id:12345 OR zzzzzzzzzz",
>     "querystring": "id:12345 OR zzzzzzzzzz",
>     "parsedquery": "(+((id:12345 DisjunctionMaxQuery((text:zzzzzzzzzz)))~2))/no_coord",
>     "parsedquery_toString": "+((id:12345 (text:zzzzzzzzzz))~2)",
>     "explain": {},
>     "QParser": "ExtendedDismaxQParser"
> Version 5.4.0 produces one result as expected
>   "rawquerystring": "id:12345 OR zzzzzzzzzz",
>     "querystring": "id:12345 OR zzzzzzzzzz",
>     "parsedquery": "(+(id:12345 DisjunctionMaxQuery((text:zzzzzzzzzz))))/no_coord",
>     "parsedquery_toString": "+(id:12345 (text:zzzzzzzzzz))"
>     "explain": {},
>     "QParser": "ExtendedDismaxQParser"



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org