Failed to check if index is compound; nested excep

正在重建索引...
错误Failed to check if index is compound; nested exception is java.io.IOException: Lock obtain timed out: Lock@D:\Tomcat 6.0\temp\lucene-dd060d33087287190699cf3f47a115fc-commit.lock

org.compass.core.engine.SearchEngineException: Failed to check if index is compound; nested exception is java.io.IOException: Lock obtain timed out: Lock@D:\Tomcat 6.0\temp\lucene-dd060d33087287190699cf3f47a115fc-commit.lock
java.io.IOException: Lock obtain timed out: Lock@D:\Tomcat 6.0\temp\lucene-dd060d33087287190699cf3f47a115fc-commit.lock
	at org.apache.lucene.store.Lock.obtain(Lock.java:56)
	at org.apache.lucene.store.Lock$With.run(Lock.java:98)
	at org.apache.lucene.index.LuceneUtils.isCompound(LuceneUtils.java:211)
	at org.compass.core.lucene.engine.manager.DefaultLuceneSearchEngineIndexManager.isIndexCompound(DefaultLuceneSearchEngineIndexManager.java:422)
	at org.compass.core.lucene.engine.manager.DefaultLuceneSearchEngineIndexManager.verifyIndex(DefaultLuceneSearchEngineIndexManager.java:90)
	at org.compass.core.impl.DefaultCompass$TransactionalSearchEngineIndexManager$2.doInCompass(DefaultCompass.java:293)
	at org.compass.core.CompassTemplate.execute(CompassTemplate.java:134)
	at org.compass.core.CompassTemplate.execute(CompassTemplate.java:117)
	at org.compass.core.impl.DefaultCompass$TransactionalSearchEngineIndexManager.verifyIndex(DefaultCompass.java:291)
	at org.compass.core.lucene.engine.manager.ScheduledLuceneSearchEngineIndexManager.verifyIndex(ScheduledLuceneSearchEngineIndexManager.java:98)
	at org.compass.core.impl.DefaultCompass.(DefaultCompass.java:147)
	at org.compass.core.impl.DefaultCompass.(DefaultCompass.java:102)
	at org.compass.core.impl.DefaultCompass.(DefaultCompass.java:95)
	at org.compass.core.config.CompassConfiguration.buildCompass(CompassConfiguration.java:191)
	at org.mypackage.service.imp.SearchServiceImp.(SearchServiceImp.java:70)
	at cn.allobject.struts.action.RebuildSearchIndexAction.index_list_of_books(RebuildSearchIndexAction.java:96)
	at cn.allobject.struts.action.RebuildSearchIndexAction.execute(RebuildSearchIndexAction.java:73)
	at org.apache.struts.action.RequestProcessor.processActionPerform(RequestProcessor.java:419)
	at org.apache.struts.action.RequestProcessor.process(RequestProcessor.java:224)
	at org.apache.struts.action.ActionServlet.process(ActionServlet.java:1194)
	at org.apache.struts.action.ActionServlet.doGet(ActionServlet.java:414)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:690)
	at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.tuckey.web.filters.urlrewrite.RuleChain.handleRewrite(RuleChain.java:164)
	at org.tuckey.web.filters.urlrewrite.RuleChain.doRules(RuleChain.java:141)
	at org.tuckey.web.filters.urlrewrite.UrlRewriter.processRequest(UrlRewriter.java:90)
	at org.tuckey.web.filters.urlrewrite.UrlRewriteFilter.doFilter(UrlRewriteFilter.java:417)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at cn.java1995.filter.GZipFilter.doFilter(GZipFilter.java:41)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at cn.allobject.servlet.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:34)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:263)
	at org.apache.jk.server.JkCoyoteHandler.invoke(JkCoyoteHandler.java:190)
	at org.apache.jk.common.HandlerRequest.invoke(HandlerRequest.java:283)
	at org.apache.jk.common.ChannelSocket.invoke(ChannelSocket.java:767)
	at org.apache.jk.common.ChannelSocket.processConnection(ChannelSocket.java:697)
	at org.apache.jk.common.ChannelSocket$SocketConnection.runIt(ChannelSocket.java:889)
	at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.java:690)
	at java.lang.Thread.run(Unknown Source)




最近网站出现了这个问题,,,好郁闷。这是LUCENE的问题。
自己不怎么懂啊。。。只得GOOGLE下啦!
引用
出现以上异常主要有两种原因:
1.系统正在写索引未完成之前,应用程序关闭
解决方法:删除提示的lock文件后重启应用(最好在应用中捕捉到,自动删除)
2.系统中有多个线程或程序在抢用索引
解决方法:增加或改善等待队列机制作,或者出现此错误时先解锁


哎。。。怎么会出现这个问题。。。。看来没希望了。如果要解决这个问题又得叫空间提供商重启服务,那边又会是一堆废话。。。

嘿嘿,自己写个JSP页面,删除了那文件试下了。哈。。。删好,果然,成功了。网站搜索又能使用。哎。。得学习下LUCENE啊。。。不能只知道WHAT不知道HOW啊。

你可能感兴趣的:(java,apache,tomcat,struts,Lucene)