提问者:小点点

如何使用 lucene-back-codecs?


我试图使Solr 7.3.1读取5.3.1索引,我试图使用lucene反向编解码器jar文件,但我无法使其工作-

造成原因:org . Apache . Lucene . index . indexformattoooldexception:不支持格式版本(resource BufferedChecksumIndexInput(MMapIndexInput(path = " C:\ program filesvaronis \ DatAnswers \ Solr \ cloud \ node 1 \ documents _ shard 1 _ replica _ n1 \ data \ index \ segments _ a ")):此索引太旧(版本:5.3.1)。这个版本的Lucene只支持用6.0版和更高版本创建的索引

我需要哪个版本的Lucene-backth-codecs?我需要把它们放在Solr的哪里才能使其工作?


共1个答案

匿名用户

向后编解码器文件与IndexUpgrader工具一起使用。它还在Solr内部用于自动读取旧的索引文件并且已经加载。

Lucene发行版包含一个将索引从以前的Lucene版本升级到当前文件格式的工具。

java -cp lucene-core-7.5.0.jar:lucene-backward-codecs-7.5.0.jar org.apache.lucene.index.IndexUpgrader [-delete-prior-commits] [-verbose] /path/to/index

但这是您可能会遇到的问题 - 向后兼容性仅跨越一个主要版本。因此,Solr 7 可以从 Solr 6 读取索引文件,但不能从 Solr 5 读取索引文件。

要解决此问题,您可以下载Solr 6. x,运行IndexUpgrader工具,然后在Solr 7.5中打开该索引。

还有一个工具可以下载所需的jar(upgrade index . sh ),并为您从每个版本执行automagic升级。