> I have some fields that are only used for faceting, so
> they're only
> queried by facet results. No modification is needed, no
> lowercase,
> nothing. So the KeywordTokenizerFactory seems to be perfect
> for them.

You can use plain string type definition (comes in schema.xml) for that purpose.

> Alas, when the value contains spaces, I'm still getting too
> many
> results. I have a field defined like this:
> 
>     <fieldType name="text_unchanged"
> class="solr.StrField"
> positionIncrementGap="100">
>       <analyzer>
>         <tokenizer
> class="solr.KeywordTokenizerFactory"/>
>       </analyzer>
>     </fieldType>
> 
> (Using solr.TextField didn't change anything)
> 
> When quering for:
> ....&fq=label:Aces+of+London
> 
> I get the result:
> .... "facet_fields":{
>     "label":[
>      "Aces of London",31,
>      "Feud London",2,
>      "Fly London",2],
> ....},
> 
> I get the same result when taking "Feud London" as the
> facet value.
> 
> When inspecting the index with the schema browser, I can
> see that all
> labels are tokenized correctly in complete, i.e. there's no
> token
> "London", but a token "Aces of London". So the
> KeywordTokenizer seems to
> work as expected, at least for indexing. It's only that the
> facet query
> is not narrow enough.
> 
> Even the superb Solr book didn't help me here. Does anybody
> have a clue
> what I'm doing wrong here?

try using Parenthesis with queries that contain more than one term. 
&fq=label:(Aces+of+London) 
Otherwise  <defaultSearchField></defaultSearchField> jumps in.



Reply via email to