[ https://issues.apache.org/jira/browse/SOLR-8812?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15220908#comment-15220908 ]
Jan Høydahl commented on SOLR-8812: ----------------------------------- [~gpendleb] looks like you have a good command on the logic and interactions here, so feel free to throw up a patch... bq. IF (the query contains a boolean operator) AND (mm has not been explicitly set) THEN (mm = 0%) In my experience some users may set mm=100% while others achieved the same with q.op=AND. Advising users to favor the use of only q.op to get boolean operators working makes the distinction hard to explain. I'm positive to applying a fix that focuses on getting the pure AND/OR 0%/100% case fixed (if that could be achieved with your proposed method), and then worry about other mm's combined with explicit operators later. > 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-unsubscr...@lucene.apache.org For additional commands, e-mail: dev-h...@lucene.apache.org