我正在将 Solr 从版本 5.2 升级到版本 8.2
在我的 schema.xml 文件的分析器中,我对分词器有以下引用:
<tokenizer class="solr.KeywordTokenizerFactory"/>
<tokenizer class="solr.WhitespaceTokenizerFactory"/>
<tokenizer class="solr.StandardTokenizerFactory"/>
<tokenizer class="solr.PathHierarchyTokenizerFactory" delimiter="/" />
<tokenizer class="solr.JapaneseTokenizerFactory" mode="search"/>
<tokenizer class="solr.ThaiTokenizerFactory"/>
<tokenizer class="solr.HMMChineseTokenizerFactory"/>
在 8.2 Solr 服务器上重新加载核心时,我收到以下警告:
TokenFilterFactory is using deprecated 4.10.2 emulation. You should at some point declare and reindex to at least 7.0,​ because 6.x emulation is deprecated and will be removed in 8.0
我需要更改什么才能消除此警告?
最佳答案
您将拥有to set the luceneMatchVersion
in your solrconfig.xml
, clear out the index and reindex your content .
来自上面链接的 Shawn Heisey 的帖子:
The "luceneMatchVersion" setting in your solrconfig.xml file is 5.2.1. It might also appear in schema.xml, but solrconfig.xml is more likely.
The message is saying "right now, the config settings you're using will be honored, but they won't be in the future." This message is a warning and will not cause Solr to blow up, even in 7.0.
The first thing you'll need to do is change luceneMatchVersion to match your Solr version -- 6.1.0 -- and reindex.
https://wiki.apache.org/solr/HowToReindex
Note that this may change how your analyzer chains defined in schema.xml work. The change may be obvious, it may be subtle, and in some cases it might actually make no change at all. I don't have a list of changes that are made by different luceneMatchVersion settings.
One thing that luceneMatchVersion will not change is index format. I mention this because this is a common misconception. The index format will be decided by the version of Solr (Lucene) that you're running, not luceneMatchVersion.
关于solr - 将 solr 从 5.2 升级到 8.2 时收到有关分词器版本的警告消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58519888/