We've been trying to get our heads around this for some days now upgrading from 
3.6 (where we didn't see this error) to 4.1 (where this error is very prominent.

We have upgraded from SOLR 3.6.1 to 4.1 and get the following error:
INFO [2013.03.04 09:22:40] http-12200-2 org.apache.solr.core.SolrCore - [finn] 
webapp=/solr path=/select params={q=audi+a6&wt=json} status=500 QTime=14 
ERROR [2013.03.04 09:22:40] http-12200-2 
org.apache.solr.servlet.SolrDispatchFilter - 
null:java.lang.IllegalStateException: field "name" was indexed without position 
data; cannot run PhraseQuery (term=a)
        at 
org.apache.lucene.search.PhraseQuery$PhraseWeight.scorer(PhraseQuery.java:274)
        at 
org.apache.lucene.search.DisjunctionMaxQuery$DisjunctionMaxWeight.scorer(DisjunctionMaxQuery.java:161)


<name> is a field which has omitTermFreqAndPositions="true" for several reasons.

We ran into several issues:

1. <name> was defined in our PF in our request handler (edismax)
=> resolution: delete it from PF

2. <name> has WordDelimiterFilter, and fails because WDF creates a phrase 
behind the scenes.
=> resolution: update schema to >= 1.4 and add autoGeneratePhraseQueries="true" 
to all other fields or types but <name>  (phuu)

3. excplicit phrase-queries fail.  e.g a search for "audi oslo" fails with the 
error above.
=> no resolution - other than stop using omitTermFreqAndPositions

from 
http://wiki.apache.org/solr/SchemaXml#Schema_version_attribute_in_the_root_node
        omitTermFreqAndPositions=true|false <!> Solr1.4
"...Queries that rely on position that are issued on a field with this option 
will silently fail to find documents."

This doesn't seem very silent to me.  We get a 500 error from SOLR.

Does anyone out there have any resolutions or tips for this problem.  We really 
wish to still have the field defined with omitTermFreqAndPositions, have it 
defined in our qf and support phrases for the end user.

On a side note: Jan Høydals excellent auto-complete solution:
http://www.cominvent.com/2012/01/25/super-flexible-autocomplete-with-solr/
https://github.com/cominvent/autocomplete/commits/master
also suffers from this - phrases are no longer supported, as noted in:
http://stackoverflow.com/questions/10063318/solr-autocomplete-based-on-edismax-type-error


Regards,


Fredrik


--
Fredrik Rødland               Mail:    fred...@rodland.no
                              Cell:    +47 99 21 98 17
                              Twitter: @fredrikr
Maisen Pedersens vei 1        Flickr:  http://www.flickr.com/fmmr/
NO-1363 Høvik, NORWAY         Web:     http://about.me/fmr



Reply via email to