I would describe that subtly differently, and I think it is where the difference lies:
"Then from 4.x it did not care about q.op if mm was set explicitly" >> I agree. q.op was not actually used in the query, but rather as a way of inferred the default mm value. eDismax still ignored whatever q.op was set and built your query operators (ie. the occurs flags) using q.op=OR. "And from 5.5 it seems as q.op does something even if mm is set..." >> Yes, although I think it is the words 'even if' drawing too strong a relationship between the two parameters. q.op has a function of its own, and that now functions as it 'should' (opinionated, I know) in the query construction, and continues to influence the default value of mm if it has not been explicitly set. SOLR-8812 further evolves that influence by trying to improve backwards compatibility for users who were not explicitly setting mm, and only ever changed 'q.op' despite it being a step removed from the actual parameter they were trying to manipulate. So in relation to the OP's sample queries I was pointing out that 'q.op=OR + mm=2' and 'q,op=AND + mm=2' are treated as identical queries by Solr 5.4, but 5.5+ will manipulate the occurs flags differently before it applies mm afterwards... because that is what q.op does. On 2 June 2016 at 07:13, Jan Høydahl <jan....@cominvent.com> wrote: > Edismax used to default to mm=100% and not care about q.op at all > > Then from 4.x it did not care about q.op if mm was set explicitly, > but if mm was not set, then q.op=OR —> mm=0%, q.op=AND —> mm=100% > > And from 5.5 it seems as q.op does something even if mm is set... > > -- > Jan Høydahl, search solution architect > Cominvent AS - www.cominvent.com > > > 1. jun. 2016 kl. 23.05 skrev Greg Pendlebury <greg.pendleb...@gmail.com > >: > > > > But isn't that the default value? In this case the OP is setting mm > > explicitly to 2. > > > > Will have to look at those code links more thoroughly at work this > morning. > > Apologies if I am wrong. > > > > Ta, > > Greg > > > > On Wednesday, 1 June 2016, Jan Høydahl <jan....@cominvent.com> wrote: > > > >>> 1. jun. 2016 kl. 03.47 skrev Greg Pendlebury < > greg.pendleb...@gmail.com > >> <javascript:;>>: > >> > >>> I don't think it is 8812. q.op was completely ignored by edismax prior > to > >>> 5.5, so it is not mm that changed. > >> > >> That is not the case. Prior to 5.5, mm would be automatically set to > 100% > >> if q.op==AND > >> See https://issues.apache.org/jira/browse/SOLR-1889 and > >> https://svn.apache.org/viewvc?view=revision&revision=950710 > >> > >> Jan > >