从Solr 4.10.2迁移到Solr 6.0

时间:2016-06-06 15:22:51

标签: solr migration

我尝试将Solr存储库从4.10.2迁移到6.0.0。根据我所读过的内容,应该可以跳过两个主要版本。但是,当我部署6.0.0系统并从4.10.2主服务器复制时,我得到以下异常:

Caused by: org.apache.lucene.index.IndexFormatTooOldException: Format version is not supported
path="<path-to-data>\data\index\segments_3sq" 3 (needs to be between 4 and 6).
This version of Lucene only supports indexes created with release 5.0 and later.

出于某种原因,似乎我们的4.10.2存储库 - 在4.10.2环境中从头开始构建 - 包含文件名&#34; segments_3sq&#34;这是一个版本3文件。这对于要处理的6.0.0安装来说太大了(三个版本)。

为什么4.10.2环境包含v3文件?有没有办法重新构建4.10.2 w / out该文件?另一种方法是迁移到5.5.1,然后再迁移到6.0,但是我想尽可能避免两次升级事件。

4 个答案:

答案 0 :(得分:1)

仔细查看错误消息:

This version of Lucene only supports indexes created with release 5.0 and later.

显然不可能直接从4.10.2跳到6.0,但我们必须首先绕过5.5.1。

我找到了以下页面Lucene 5.0.0 migration,它确实说明不可能从3.x直接跳到5.x.将类似信息包含在Lucene 6.0.0 migration页面中会很不错。

答案 1 :(得分:1)

我已成功将我的solr 4.10升级到6.3(其间为solr 5.0)并执行以下步骤

  1. 下载solr5.0并创建所有馆藏
  2. 将索引数据从4.x复制到5.0
  3. 优化所有馆藏
  4. 停止solr 5.0并下载并启动solr 6.x
  5. 在solr 6.x中创建所有集合
  6. 将所有索引文件从5.0复制到6.x
  7. 优化所有馆藏,您已做好准备
  8. 快乐编码

答案 2 :(得分:0)

升级Solr时,Lucene索引文件未升级。解决此问题的最佳方法是使用更新版本的Solr重新索引数据。

在黑暗中拍摄,你也可以尝试优化,不确定它是否有效,但值得研究。

答案 3 :(得分:0)

要升级数据文件版本,您可以使用solr upgradeder工具: https://cwiki.apache.org/confluence/display/solr/IndexUpgrader+Tool