gpt4 book ai didi

java - Solr-并发提交时OverlappingFileLockException

转载 作者:行者123 更新时间:2023-11-30 09:49:16 25 4
gpt4 key购买 nike

我在tomcat 6上使用了1.r的solr版本。我有2个solr实例作为2个不同的Web应用程序运行,并带有单独的数据文件夹。我的应用程序需要来自多个客户端的频繁提交。我注意到,当多个客户端尝试同时提交时,这些OverlappingFileLockException开始出现。可以采取任何措施来纠正此问题吗?请在下面找到错误日志。谢谢



HTTP状态500-空

java.nio.channels.OverlappingFileLockException
    在sun.nio.ch.FileChannelImpl $ SharedFileLockTable.checkList(FileChannelImpl.java:1215)
    在sun.nio.ch.FileChannelImpl $ SharedFileLockTable.add(FileChannelImpl.java:1117)
    在sun.nio.ch.FileChannelImpl.tryLock(FileChannelImpl.java:923)
    在java.nio.channels.FileChannel.tryLock(FileChannel.java:978)
    在org.apache.lucene.store.NativeFSLock.obtain(NativeFSLockFactory.java:233)
    在org.apache.lucene.store.Lock.obtain(Lock.java:73)
    在org.apache.lucene.index.IndexWriter.init(IndexWriter.java:1550)
    在org.apache.lucene.index.IndexWriter。 (IndexWriter.java:1407)
    在org.apache.solr.update.SolrIndexWriter。 (SolrIndexWriter.java:190)
    在org.apache.solr.update.UpdateHandler.createMainIndexWriter(UpdateHandler.java:98)
    在org.apache.solr.update.DirectUpdateHandler2.openWriter(DirectUpdateHandler2.java:173)
    在org.apache.solr.update.DirectUpdateHandler2.addDoc(DirectUpdateHandler2.java:220)
    在org.apache.solr.update.processor.RunUpdateProcessor.processAdd(RunUpdateProcessorFactory.java:61)
    在org.apache.solr.handler.XMLLoader.processUpdate(XMLLoader.java:139)
    在org.apache.solr.handler.XMLLoader.load(XMLLoader.java:69)
    在org.apache.solr.handler.ContentStreamHandlerBase.handleRequestBody(ContentStreamHandlerBase.java:54)
    在org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:131)
    在org.apache.solr.core.SolrCore.execute(SolrCore.java:1317)
    在org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:338)
    在org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:241)
    在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    在org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    在org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    在org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    在org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    在org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    在org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
    在org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
    在org.apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process(Http11Protocol.java:588)
    在org.apache.tomcat.util.net.JIoEndpoint $ Worker.run(JIoEndpoint.java:489)
    在java.lang.Thread.run(Thread.java:636)
类型Status reportmessage null

java.nio.channels.OverlappingFileLockException
    在sun.nio.ch.FileChannelImpl $ SharedFileLockTable.checkList(FileChannelImpl.java:1215)
    在sun.nio.ch.FileChannelImpl $ SharedFileLockTable.add(FileChannelImpl.java:1117)
    在sun.nio.ch.FileChannelImpl.tryLock(FileChannelImpl.java:923)
    在java.nio.channels.FileChannel.tryLock(FileChannel.java:978)
    在org.apache.lucene.store.NativeFSLock.obtain(NativeFSLockFactory.java:233)
    在org.apache.lucene.store.Lock.obtain(Lock.java:73)
    在org.apache.lucene.index.IndexWriter.init(IndexWriter.java:1550)
    在org.apache.lucene.index.IndexWriter。 (IndexWriter.java:1407)
    在org.apache.solr.update.SolrIndexWriter。 (SolrIndexWriter.java:190)
    在org.apache.solr.update.UpdateHandler.createMainIndexWriter(UpdateHandler.java:98)
    在org.apache.solr.update.DirectUpdateHandler2.openWriter(DirectUpdateHandler2.java:173)
    在org.apache.solr.update.DirectUpdateHandler2.addDoc(DirectUpdateHandler2.java:220)
    在org.apache.solr.update.processor.RunUpdateProcessor.processAdd(RunUpdateProcessorFactory.java:61)
    在org.apache.solr.handler.XMLLoader.processUpdate(XMLLoader.java:139)
    在org.apache.solr.handler.XMLLoader.load(XMLLoader.java:69)
    在org.apache.solr.handler.ContentStreamHandlerBase.handleRequestBody(ContentStreamHandlerBase.java:54)
    在org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:131)
    在org.apache.solr.core.SolrCore.execute(SolrCore.java:1317)
    在org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:338)
    在org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:241)
    在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    在org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    在org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    在org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    在org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    在org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    在org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
    在org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
    在org.apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process(Http11Protocol.java:588)
    在org.apache.tomcat.util.net.JIoEndpoint $ Worker.run(JIoEndpoint.java:489)
    在java.lang.Thread.run(Thread.java:636)
描述服务器遇到内部错误(空

java.nio.channels.OverlappingFileLockException
    在sun.nio.ch.FileChannelImpl $ SharedFileLockTable.checkList(FileChannelImpl.java:1215)
    在sun.nio.ch.FileChannelImpl $ SharedFileLockTable.add(FileChannelImpl.java:1117)
    在sun.nio.ch.FileChannelImpl.tryLock(FileChannelImpl.java:923)
    在java.nio.channels.FileChannel.tryLock(FileChannel.java:978)
    在org.apache.lucene.store.NativeFSLock.obtain(NativeFSLockFactory.java:233)
    在org.apache.lucene.store.Lock.obtain(Lock.java:73)
    在org.apache.lucene.index.IndexWriter.init(IndexWriter.java:1550)
    在org.apache.lucene.index.IndexWriter。 (IndexWriter.java:1407)
    在org.apache.solr.update.SolrIndexWriter。 (SolrIndexWriter.java:190)
    在org.apache.solr.update.UpdateHandler.createMainIndexWriter(UpdateHandler.java:98)
    在org.apache.solr.update.DirectUpdateHandler2.openWriter(DirectUpdateHandler2.java:173)
    在org.apache.solr.update.DirectUpdateHandler2.addDoc(DirectUpdateHandler2.java:220)
    在org.apache.solr.update.processor.RunUpdateProcessor.processAdd(RunUpdateProcessorFactory.java:61)
    在org.apache.solr.handler.XMLLoader.processUpdate(XMLLoader.java:139)
    在org.apache.solr.handler.XMLLoader.load(XMLLoader.java:69)
    在org.apache.solr.handler.ContentStreamHandlerBase.handleRequestBody(ContentStreamHandlerBase.java:54)
    在org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:131)
    在org.apache.solr.core.SolrCore.execute(SolrCore.java:1317)
    在org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:338)
    在org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:241)
    在org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    在org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    在org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    在org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    在org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    在org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    在org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    在org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
    在org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:859)
    在org.apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process(Http11Protocol.java:588)
    在org.apache.tomcat.util.net.JIoEndpoint $ Worker.run(JIoEndpoint.java:489)
    在java.lang.Thread.run(Thread.java:636)
)阻止了它满足此请求。

最佳答案

问题在于您正在执行多个并发提交。不要那样做而是切换到autoCommit(通过configuration或通过add与commitWithin parameter一起使用)。这样,Solr会为您找出实际的提交。

关于java - Solr-并发提交时OverlappingFileLockException,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5898977/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com