SOLR phrase query
- by Alex
I have a slight problem when searching with SOLR 4.0 and attempting a phrase query.
I have a field called "idx_text_general_ci" which is a case insensitive (all lowercased) field made up of all fields.
When I try and search for a phrase (marine fitter) my SOLR refuses to search for the phrase instead splitting the phrase into 2 words -
/select?defType=edismax&q=idx_text_general_ci:marine%20fitter&debugQuery=true
debugQuery=true output below:
<lst name="debug">
<str name="rawquerystring">idx_text_general_ci:marine fitter</str>
<str name="querystring">idx_text_general_ci:marine fitter</str>
<str name="parsedquery">
(+(idx_text_general_ci:marine DisjunctionMaxQuery((id:fitter))))/no_coord
</str>
<str name="parsedquery_toString">+(idx_text_general_ci:marine (id:fitter))</str>
As you can see above it splits the query into 2 parts (idx_text_general_ci:marine then id:fitter).
THe problem I have is that I have an exact match for "marine fitter" that appears twice in the idx_text_general_ci field yet it's ranked with a lesser score than a document with the word "marine" appearing 3 times. I know this will not be the case if my SOLR was to search the field with the phrase as expected.
If I wrap the phrase in quotes I get zero results.
Any help or a nudge in the right direction would be much appreciated.
Thanks in advance
Alex