如何修复 IndexNotFoundException:找不到段 * 文件? [英] How to fix IndexNotFoundException: no segments* file found?

查看:46
本文介绍了如何修复 IndexNotFoundException:找不到段 * 文件?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我自己编写代码来索引一些数据文件.这一切都在起作用.一旦我修改了 schema.xml 文件,现在我收到内部服务器错误,我不知道如何解释它.

I write my own code to index some data files myself. It was all working. Once I modified the schema.xml file, now i get internal server error that i have no idea how to interpret it.

Internal Server Error

request: http://127.0.0.1:8080/solr/update?wt=javabin&version=2
    at org.apache.solr.client.solrj.impl.CommonsHttpSolrServer.request(CommonsHttpSolrServer.java:427)
    at org.apache.solr.client.solrj.impl.CommonsHttpSolrServer.request(CommonsHttpSolrServer.java:249)
    at org.apache.solr.client.solrj.request.AbstractUpdateRequest.process(AbstractUpdateRequest.java:105)
    at org.apache.solr.client.solrj.SolrServer.add(SolrServer.java:69)
    at org.apache.solr.client.solrj.SolrServer.add(SolrServer.java:54)
    at solr.client.SolrClient.index(SolrClient.java:109)
    at solr.client.SolrClient.main(SolrClient.java:26)

然后我查看了 catalina 日志文件,它说没有创建核心...

Then I look into catalina log file, it's saying that no core created...

   Jun 26, 2012 2:09:21 AM org.apache.solr.core.SolrCore close
INFO: []  CLOSING SolrCore org.apache.solr.core.SolrCore@5675b3ee
Jun 26, 2012 2:09:21 AM org.apache.solr.common.SolrException log
SEVERE: java.lang.NullPointerException
    at org.apache.solr.core.SolrCore.close(SolrCore.java:712)
    at org.apache.solr.core.SolrCore.<init>(SolrCore.java:599)
    at org.apache.solr.core.CoreContainer.create(CoreContainer.java:483)
    at org.apache.solr.core.CoreContainer.load(CoreContainer.java:335)
    at org.apache.solr.core.CoreContainer.load(CoreContainer.java:219)
    at org.apache.solr.core.CoreContainer$Initializer.initialize(CoreContainer.java:161)
    at org.apache.solr.servlet.SolrDispatchFilter.init(SolrDispatchFilter.java:96)
    at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:277)
    at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:258)
    at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:382)
    at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:103)
    at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4638)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5294)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:895)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:871)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:615)
    at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:649)
    at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1585)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
    at java.util.concurrent.FutureTask.run(FutureTask.java:138)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    at java.lang.Thread.run(Thread.java:680)

Jun 26, 2012 2:09:21 AM org.apache.solr.core.SolrCore closeSearcher
INFO: [] Closing main searcher on request.
Jun 26, 2012 2:09:21 AM org.apache.solr.common.SolrException log
SEVERE: org.apache.solr.common.SolrException
    at org.apache.solr.core.SolrCore.<init>(SolrCore.java:600)
    at org.apache.solr.core.CoreContainer.create(CoreContainer.java:483)
    at org.apache.solr.core.CoreContainer.load(CoreContainer.java:335)
    at org.apache.solr.core.CoreContainer.load(CoreContainer.java:219)
    at org.apache.solr.core.CoreContainer$Initializer.initialize(CoreContainer.java:161)
    at org.apache.solr.servlet.SolrDispatchFilter.init(SolrDispatchFilter.java:96)
    at org.apache.catalina.core.ApplicationFilterConfig.initFilter(ApplicationFilterConfig.java:277)
    at org.apache.catalina.core.ApplicationFilterConfig.getFilter(ApplicationFilterConfig.java:258)
    at org.apache.catalina.core.ApplicationFilterConfig.setFilterDef(ApplicationFilterConfig.java:382)
    at org.apache.catalina.core.ApplicationFilterConfig.<init>(ApplicationFilterConfig.java:103)
    at org.apache.catalina.core.StandardContext.filterStart(StandardContext.java:4638)
    at org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5294)
    at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
    at org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:895)
    at org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:871)
    at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:615)
    at org.apache.catalina.startup.HostConfig.deployDescriptor(HostConfig.java:649)
    at org.apache.catalina.startup.HostConfig$DeployDescriptor.run(HostConfig.java:1585)
    at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:441)
    at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303)
    at java.util.concurrent.FutureTask.run(FutureTask.java:138)
    at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
    at java.lang.Thread.run(Thread.java:680)
Caused by: java.lang.RuntimeException: org.apache.lucene.index.IndexNotFoundException: no segments* file found in org.apache.lucene.store.NIOFSDirectory@/Users/nan/solr-tomcat/solr/data/index lockFactory=org.apache.lucene.store.NativeFSLockFactory@11396ef7: files: []
    at org.apache.solr.core.SolrCore.getSearcher(SolrCore.java:1104)
    at org.apache.solr.core.SolrCore.<init>(SolrCore.java:585)
    ... 23 more
Caused by: org.apache.lucene.index.IndexNotFoundException: no segments* file found in org.apache.lucene.store.NIOFSDirectory@/Users/nan/solr-tomcat/solr/data/index lockFactory=org.apache.lucene.store.NativeFSLockFactory@11396ef7: files: []
    at org.apache.lucene.index.SegmentInfos$FindSegmentsFile.run(SegmentInfos.java:667)
    at org.apache.lucene.index.DirectoryReader.open(DirectoryReader.java:72)
    at org.apache.lucene.index.IndexReader.open(IndexReader.java:375)
    at org.apache.solr.core.StandardIndexReaderFactory.newReader(StandardIndexReaderFactory.java:38)
    at org.apache.solr.core.SolrCore.getSearcher(SolrCore.java:1093)
    ... 24 more

更新了上面的 catalina 日志文件...是的,我删除了索引数据,因为我以为我要创建新索引...我今天早些时候这样做了,但直到现在我才看到这种错误...应该怎么做我解决这个问题?:(

Updated catalina log file above...yes i removed the index data since i thought i am going to create new index...and i did this earlier today but i didnt see this kinda error until now...how should i fix this? :(

非常感谢!!!(^无限次)

Thanks a lot!!! (^infinitive times)

推荐答案

正如您从日志文件中看到的,Solr/Lucene 无法在数据目录中找到段文件.

As you can see from your log file Solr/Lucene can't find the segments file within the data directory.

如果删除数据目录,Solr 将在启动时自动重新创建一个全新的索引(当然是空的).从错误来看,您的数据目录似乎在那里,但缺少一些文件.由于我了解到您愿意重新索引所有内容,因此您只需删除索引目录然后重新索引即可修复错误.

If you remove the data directory, Solr will recreate a brand new index (empty, of course)automatically on startup. From the error it seems that your data directory is there, but with some file missing. Since I understood that you are willing to reindex everything, you can fix the error just deleting your index directory and then reindex.

这篇关于如何修复 IndexNotFoundException:找不到段 * 文件?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆