Here is the interresting part of the schema :
<fieldType name="text_rev" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true" />
<filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="1" catenateNumbers="1" catenateAll="0" splitOnCaseChange="0"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.SnowballPorterFilterFactory" language="English" protected="protwords.txt"/>
<filter class="solr.ASCIIFoldingFilterFactory" />
<filter class="solr.ReversedWildcardFilterFactory" withOriginal="true" maxPosAsterisk="3" maxPosQuestion="2" maxFractionAsterisk="0.33"/>
</analyzer>
<analyzer type="query">
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
<filter class="solr.StopFilterFactory"
ignoreCase="true"
words="stopwords.txt"
enablePositionIncrements="true"
/>
<filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="0" catenateNumbers="0" catenateAll="0" splitOnCaseChange="0"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.SnowballPorterFilterFactory" language="English" protected="protwords.txt"/>
<filter class="solr.ASCIIFoldingFilterFactory" />
</analyzer>
</fieldType>
I got a field named Title using this fieldType and some products whose title contains "Harry Potter"
The query : "Title:Harry*" will return 0 results whereas "Title:Harry" will return a lot. But the thing is "Title:Potter*" will return the same number of results as "Title:Potter"
So why is "Title:Harry*" not returning any result?
Edit : I found a workaround using the query : 'Title:"Harry*"' (Notice the use of " )
Here is the debug for query Title:Harry , Title:Harry* , Title:"Harry*"
Title:Harry
<str name="rawquerystring">Title:Harry</str>
<str name="querystring">Title:Harry</str>
<str name="parsedquery">Title:harri</str>
<str name="parsedquery_toString">Title:harri</str>
Title:Harry*
<str name="rawquerystring">Title:Harry*</str>
<str name="querystring">Title:Harry*</str>
<str name="parsedquery">Title:Harry*</str>
<str name="parsedquery_toString">Title:Harry*</str>
Title:"Harry*"
<str name="rawquerystring">Title:"Harry*"</str>
<str name="querystring">Title:"Harry*"</str>
<str name="parsedquery">Title:harri</str>
<str name="parsedquery_toString">Title:harri</str>