I cannot get Solr 4.6.0 to do partial word search on a particular field that is used for faceting. Most of the information I have found suggests modifying the fieldType "text" to include either the NGramFilterFactory or EdgeNGramFilterFactory in the filter. However since I am copying many other fields to "text" for searching my expectation is that the NGramFilterFactory would create ngrams for everything sent to it, which is unnecessary and probably costly - right?
In an effort to try and troubleshoot the issue I created a new field in the schema and stored it so that I could see what was getting populated. However, what I'm finding is that no ngrams are being generated, just the actual data that gets indexed from the database. Here's what my setup looks like: NOTE: Every record in my test environment has the same value "Example" <field name="PartialSubject" type="partialWord" indexed="true" stored="true" multiValued="true" /> <copyField source="PartialSubject" dest="text"> <fieldType name="partialWord" class="solr.TextField" positionIncrementGap="100"> <analyzer> <tokenizer class="solr.StandardTokenizerFactory"/> <filter class="solr.LowerCaseFilterFactory"/> <filter class="solr.EdgeNGramFilterFactory" minGramSize="3" maxGramSize="10" side="front"/> </analyzer> </fieldType> When I query Solr it reports: <arr name="PartialSubject"> <str>Example</str> </arr> I was expecting exa, exam, examp, example, example to be the values for PartialSubject so that a search for "exam" would turn up all of the records in this test index. Instead I get 0 results. Can anyone provide any guidance on this please?