I'm using CollectionKeyFilter to sort my documents using the Unicode
root collation, and my documents do appear to be getting sorted
correctly, but I'm getting weird results when performing range filtering
using the sort key field. For example:
ifp_sortkey_ls:["youth culture" TO "youth culture"]
and
ifp_sortkey_ls:{"youth culture" TO "youth culture"}
both return 0 hits
but
ifp_sortkey_ls:"youth culture"
returns 1 hit
It seems as if any query using the ifp_sortkey_ls:[A to B] syntax is
acting as if the terms A, B are greater than all documents whose
sortkeys start with an A-Z character, but less than a few documents that
have greek letters as their first characters of their sortkeys.
the analysis chain for ifp_sortkey_ls is:
<fieldType name="sortkey" stored="false" indexed="true"
class="solr.TextField" positionIncrementGap="100" omitNorms="true"
omitTermFreqAndPositions="true">
<analyzer>
<tokenizer class="solr.KeywordTokenizerFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<!-- The TrimFilter removes any leading or trailing whitespace -->
<filter class="solr.TrimFilterFactory" />
<filter class="solr.CollationKeyFilterFactory"
language=""
strength="primary"
/>
</analyzer>
</fieldType>
Does anyone have any idea what might be going on here?