我需要将在5.5.3上运行的solr核心移动到新服务器上,在该服务器上安装了solr 8.1.1。不幸的是,存在的schema.xml使用
的多个实例solr.StandardFilterFactory
现在已被删除,没有这些,我不知道如何重写架构。
当我尝试添加核心时,出现错误
ERROR: Error CREATEing SolrCore 'core-test': Unable to create core [core-test] Caused by: solr.StandardFilterFactory
而是显示。
我的实际代码是
<analyzer type="index">
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.StandardFilterFactory"/>
<filter class="solr.StopFilterFactory" ignoreCase="true" words="stopwords_fr.txt"/>
<filter class="solr.WordDelimiterFilterFactory" generateWordParts="1" generateNumberParts="1" catenateWords="1" catenateNumbers="1" catenateAll="0" splitOnCaseChange="1" splitOnNumerics="0"/>
<filter class="solr.ASCIIFoldingFilterFactory"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.SnowballPorterFilterFactory" language="French" protected="protwords_fr.txt" />
<filter class="solr.RemoveDuplicatesTokenFilterFactory"/>
</analyzer>
我已经搜索了手册,但他们只说手册已被删除https://github.com/apache/lucene-solr/blob/master/lucene/CHANGES.txt
答案 0 :(得分:2)
StandardFilter从3.1开始没有做任何事情,因此您可以放心地删除它:
当
luceneMatchVersion
(在solrconfig.xml
中)大于“ 3.1”时,此过滤器在Solr中不再可用。
除非您明确使用了低于3.2的luceneMatchVersion
,否则它什么都不会影响。
您的词干分析程序可能会执行标准过滤器已执行的部分操作-即,它会删除复数形式的
。如果您仍然需要旧版StandardFilter的某些功能,则可以删除StandardTokenizer并使用经典版本:
<tokenizer class="solr.ClassicTokenizerFactory"/>
<filter class="solr.ClassicFilterFactory"/>