I'm already aware of defType but that doesn't really change things.

Either I use defType of DISMAX to get DisjunctionMaxQuery but then I can't
use prefix queries and more complicated boolean queries, OR I use the
standard defType which doesn't use DisjunctionMaxQuery.

I need this feature ASAP so tonight I plan on enhancing the standard handler
to support disjunctionmax if the "qf" boost list is specified.  I plan on
post-processing the parsed query to rewrite it so that references to a field
(a bogus value of some sort) gets replaced with a sub-DisjunctionMaxQuery. 
OR, I could take the approach that SolrPluginUtils.DisjunctionMaxQueryParser
takes which is to write it correctly the first time around via the template
design pattern.  I like the former approach because it opens the door to
alternative query parsing mechanisms rather than entangling these separate
concerns together (which is perhaps why this is a problem to this day).

At least that's my plan, having not gotten started.

~ David Smiley


hossman wrote:
> 
> 
> : I am frustrated that I have to pick between the two because I want both. 
> The
> : way I look at it, there should be a more configurable query handler
> which
> : allows me to dimax if I want to, and pick a parser for the user's query
> : (like the flexible one used by the standard query handler, or the more
> 
> The message you replied to is 19 months old ... there have been a lot of 
> improvements in this regard.  
> 
> On the trunk today, DisMax is a (mostly empty) subclass of Standard and 
> the type of parser you want to use can be determined by the "defType" 
> (default type) of query parsing you want ... unfortunately a lot of this 
> isn't very well documented for users yet (but it's not in a release and 
> the kinks are still beingworked out, so that's somewhat expected)
> 
> 
> -Hoss
> 
> 
> 

-- 
View this message in context: 
http://www.nabble.com/Standard-vs.-DisMaxQueryHandler-tp6421205p16944438.html
Sent from the Solr - User mailing list archive at Nabble.com.

Reply via email to