내가 검색 서버 SOLR 3.6을 사용하고있는 text_general
유형이있어 :edismax는 CommonGramsQueryFilterFactory를 지원하지 않습니까?
<fieldType name="text_general" class="solr.TextField" positionIncrementGap="100">
<analyzer type="index">
<charFilter class="solr.HTMLStripCharFilterFactory"/>
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.CommonGramsFilterFactory" words="stopwords.txt" ignoreCase="true" />
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true" />
<!-- in this example, we will only use synonyms at query time
<filter class="solr.SynonymFilterFactory" synonyms="index_synonyms.txt" ignoreCase="true" expand="false"/>
-->
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.KeywordMarkerFilterFactory" protected="protwords.txt" />
<filter class="solr.StemmerOverrideFilterFactory" dictionary="stemdict.txt" />
<filter class="solr.PorterStemFilterFactory" />
</analyzer>
<analyzer type="query">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.CommonGramsQueryFilterFactory" words="stopwords.txt" ignoreCase="true" />
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords.txt" enablePositionIncrements="true" />
<filter class="solr.SynonymFilterFactory" synonyms="synonyms.txt" ignoreCase="true" expand="true"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.KeywordMarkerFilterFactory" protected="protwords.txt" />
<filter class="solr.StemmerOverrideFilterFactory" dictionary="stemdict.txt" />
<filter class="solr.PorterStemFilterFactory" />
</analyzer>
</fieldType>
을하지만 내가 "로 또는 수 없다"검색을위한 edismax
를 사용할 때 발견은 전체 문구를 제거 할 것 불용어 구성 때문입니다. 하지만 쿼리 분석을 위해 CommonGramsQueryFilterFactory
을 사용했습니다. 디버그는 다음을 표시합니다.
<str name="rawquerystring">to be or not to be</str>
<str name="querystring">to be or not to be</str>
<str name="parsedquery">+()</str>
<str name="parsedquery_toString">+()</str>
어디에서 잘못 했습니까? edismax는 CommonGramsQueryFilterFactory를 지원하지 않습니까?