繁体   English   中英

从4.7升级到7.1后的Solr索引问题

[英]Solr indexing issue after upgrading from 4.7 to 7.1

我刚刚将solr从4.7升级到7.1。 我将较旧的文件夹名称“ old_core”(包含文件夹:“ index”,“ snapshot_metadata”和“ tlog”)复制到了数据文件夹中。 我还通过新的solr UI创建了一个新的内核。

启动solr时,我(在UI上)收到一条错误消息: old_core: org.apache.solr.common.SolrException:org.apache.solr.common.SolrException: Error opening new searcher

我发现,当我将子文件夹'index'从“ new_core”复制到“ old_core”文件夹时,它开始时没有任何错误消息。

这是否意味着无法将solr 4.7版中的索引转移到7.1版中? 有办法解决吗? 是安全的还是可能破坏索引?

日志错误:
短:

由以下原因引起:org.apache.lucene.index.IndexFormatTooOldException:不支持格式版本(资源BufferedChecksumIndexIndexInput(MMapIndexInput(path =“ / data / solr / sst1_1 / index / segments_5”))):1(需要介于6和7)。 此版本的Lucene仅支持使用6.0版及更高版本创建的索引。

完整:>

ERROR - 2017-11-23 10:05:57.182; org.apache.solr.core.CoreContainer; Error waiting for SolrCore to be created
java.util.concurrent.ExecutionException: org.apache.solr.common.SolrException: Unable to create core [sst1_1]
        at java.util.concurrent.FutureTask.report(FutureTask.java:122)
        at java.util.concurrent.FutureTask.get(FutureTask.java:192)
        at org.apache.solr.core.CoreContainer.lambda$load$14(CoreContainer.java:671)
        at com.codahale.metrics.InstrumentedExecutorService$InstrumentedRunnable.run(InstrumentedExecutorService.java:176)
        at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
        at java.util.concurrent.FutureTask.run(FutureTask.java:266)
        at org.apache.solr.common.util.ExecutorUtil$MDCAwareThreadPoolExecutor.lambda$execute$0(ExecutorUtil.java:188)
        at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
        at java.lang.Thread.run(Thread.java:748)
Caused by: org.apache.solr.common.SolrException: Unable to create core [sst1_1]
        at org.apache.solr.core.CoreContainer.createFromDescriptor(CoreContainer.java:1045)
        at org.apache.solr.core.CoreContainer.lambda$load$13(CoreContainer.java:642)
        at com.codahale.metrics.InstrumentedExecutorService$InstrumentedCallable.call(InstrumentedExecutorService.java:197)
        ... 5 more
Caused by: org.apache.solr.common.SolrException: Error opening new searcher
        at org.apache.solr.core.SolrCore.<init>(SolrCore.java:989)
        at org.apache.solr.core.SolrCore.<init>(SolrCore.java:844)
        at org.apache.solr.core.CoreContainer.createFromDescriptor(CoreContainer.java:1029)
        ... 7 more
Caused by: org.apache.solr.common.SolrException: Error opening new searcher
        at org.apache.solr.core.SolrCore.openNewSearcher(SolrCore.java:2076)
        at org.apache.solr.core.SolrCore.getSearcher(SolrCore.java:2196)
        at org.apache.solr.core.SolrCore.initSearcher(SolrCore.java:1072)
        at org.apache.solr.core.SolrCore.<init>(SolrCore.java:961)
        ... 9 more
Caused by: org.apache.lucene.index.IndexFormatTooOldException: Format version is not supported (resource BufferedChecksumIndexInput(MMapIndexInput(path="/data/solr/sst1_1/index/segments_5"))): 1 (needs to be between 6 and 7). This version of Lucene only supports indexes created with release 6.0 and later.
        at org.apache.lucene.codecs.CodecUtil.checkHeaderNoMagic(CodecUtil.java:213)
        at org.apache.lucene.index.SegmentInfos.readCommit(SegmentInfos.java:305)
        at org.apache.lucene.index.SegmentInfos.readCommit(SegmentInfos.java:289)
        at org.apache.lucene.index.IndexWriter.<init>(IndexWriter.java:1076)
        at org.apache.solr.update.SolrIndexWriter.<init>(SolrIndexWriter.java:119)
        at org.apache.solr.update.SolrIndexWriter.create(SolrIndexWriter.java:94)
        at org.apache.solr.update.DefaultSolrCoreState.createMainIndexWriter(DefaultSolrCoreState.java:257)
        at org.apache.solr.update.DefaultSolrCoreState.getIndexWriter(DefaultSolrCoreState.java:131)
        at org.apache.solr.core.SolrCore.openNewSearcher(SolrCore.java:2037)
        ... 12 more
ERROR - 2017-11-23 10:05:59.235; org.apache.solr.update.SolrIndexWriter; SolrIndexWriter was not closed prior to finalize(), indicates a bug -- POSSIBLE RESOURCE LEAK!!!
ERROR - 2017-11-23 10:05:59.236; org.apache.solr.update.SolrIndexWriter; Error closing IndexWriter
java.lang.NullPointerException
        at org.apache.lucene.index.IndexWriter.doFlush(IndexWriter.java:3583)
        at org.apache.lucene.index.IndexWriter.flush(IndexWriter.java:3545)
        at org.apache.lucene.index.IndexWriter.shutdown(IndexWriter.java:1272)
        at org.apache.lucene.index.IndexWriter.close(IndexWriter.java:1317)
        at org.apache.solr.update.SolrIndexWriter.close(SolrIndexWriter.java:280)
        at org.apache.solr.update.SolrIndexWriter.finalize(SolrIndexWriter.java:336)
        at java.lang.System$2.invokeFinalize(System.java:1270)
        at java.lang.ref.Finalizer.runFinalizer(Finalizer.java:98)
        at java.lang.ref.Finalizer.access$100(Finalizer.java:34)
        at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:210)

提前致谢!
麦克风

您不能一次升级那么多版本。 Solr(Lucene)仅支持先前版本的索引格式,因此您可能必须自己完成每个版本。

Solr捆绑有一个工具来帮助您完成此任务-IndexUpgrader

还有一个有用的脚本可以自动执行从4.x及更高版本的迁移

与往常一样,如有必要,请保留索引的备份。 还要记住,某些字段类型可能不再可用,或者字段类型已更改(并引入了可能默认启用的新功能)。

如果可以重新编制索引,则这是首选的升级路径。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM