You are viewing a plain text version of this content. The canonical link for it is here.
Posted to solr-user@lucene.apache.org by Abhishek Pratap Singh <ab...@gmail.com> on 2013/03/05 07:21:52 UTC

Error opening new searcher

Hi All,

We had upgraded solr-3.6 to solr-4.0 some time back and since then we
keep encountering "Error opening new searcher" exception on
replication master. We found two suggestions on internet
1. Increase the value of maxWarmingSearchers
2. set the value of "useColdSearcher" as true

We have applied both the suggestions and whenever we face this issue,
we increase the value of maxWarmingSearchers by 2. Current value is
14. Is this the only solution? or can we calculate a number which is
suitable for our context.

We never faced this issue in replication with solr-3.6.
Also since this exception is not "exceeded max warming searcher", now
I've started believing that increasing the maxWarmingSearchers may not
be the solution.

Please guide.

This problem appears during commit, usually every week, specially when
query rate is high. The only solution then remains to restart solr.
We are running 60GB index with 32G RAM (10G to solr)

Following is the stack trace of exception

5 Mar, 2013 12:30:19 AM org.apache.solr.common.SolrException log
SEVERE: null:org.apache.solr.common.SolrException: Error opening new searcher
	at org.apache.solr.core.SolrCore.openNewSearcher(SolrCore.java:1310)
	at org.apache.solr.core.SolrCore.getSearcher(SolrCore.java:1422)
	at org.apache.solr.core.SolrCore.getSearcher(SolrCore.java:1200)
	at org.apache.solr.update.DirectUpdateHandler2.commit(DirectUpdateHandler2.java:560)
	at org.apache.solr.update.processor.RunUpdateProcessor.processCommit(RunUpdateProcessorFactory.java:87)
	at org.apache.solr.update.processor.UpdateRequestProcessor.processCommit(UpdateRequestProcessor.java:64)
	at org.apache.solr.update.processor.DistributedUpdateProcessor.processCommit(DistributedUpdateProcessor.java:1007)
	at org.apache.solr.update.processor.LogUpdateProcessor.processCommit(LogUpdateProcessorFactory.java:157)
	at org.apache.solr.handler.loader.XMLLoader.processUpdate(XMLLoader.java:250)
	at org.apache.solr.handler.loader.XMLLoader.load(XMLLoader.java:157)
	at org.apache.solr.handler.UpdateRequestHandler$1.load(UpdateRequestHandler.java:92)
	at org.apache.solr.handler.ContentStreamHandlerBase.handleRequestBody(ContentStreamHandlerBase.java:74)
	at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:129)
	at org.apache.solr.core.SolrCore.execute(SolrCore.java:1699)
	at org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:455)
	at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:276)
	at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1337)
	at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:484)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
	at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:524)
	at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:233)
	at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1065)
	at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:413)
	at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:192)
	at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:999)
	at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
	at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:250)
	at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:149)
	at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:111)
	at org.eclipse.jetty.server.Server.handle(Server.java:351)
	at org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:454)
	at org.eclipse.jetty.server.BlockingHttpConnection.handleRequest(BlockingHttpConnection.java:47)
	at org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:900)
	at org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:954)
	at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:857)
	at org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)
	at org.eclipse.jetty.server.BlockingHttpConnection.handle(BlockingHttpConnection.java:66)
	at org.eclipse.jetty.server.bio.SocketConnector$ConnectorEndPoint.run(SocketConnector.java:254)
	at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:599)
	at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:534)
	at java.lang.Thread.run(Thread.java:662)
Caused by: org.apache.lucene.store.AlreadyClosedException: this
IndexWriter is closed
	at org.apache.lucene.index.IndexWriter.ensureOpen(IndexWriter.java:550)
	at org.apache.lucene.index.IndexWriter.ensureOpen(IndexWriter.java:563)
	at org.apache.lucene.index.IndexWriter.nrtIsCurrent(IndexWriter.java:4196)
	at org.apache.lucene.index.StandardDirectoryReader.doOpenFromWriter(StandardDirectoryReader.java:266)
	at org.apache.lucene.index.StandardDirectoryReader.doOpenIfChanged(StandardDirectoryReader.java:245)
	at org.apache.lucene.index.StandardDirectoryReader.doOpenIfChanged(StandardDirectoryReader.java:235)
	at org.apache.lucene.index.DirectoryReader.openIfChanged(DirectoryReader.java:169)
	at org.apache.solr.core.SolrCore.openNewSearcher(SolrCore.java:1256)
	... 40 more



-- 
Regards
Abhishek Pratap Singh

Re: Error opening new searcher

Posted by Singh Abhishek <ab...@gmail.com>.
Thanks Otis for your suggestions.
I will upgrade solr to 4.1 and check if same problem appears.


On Tue, Mar 5, 2013 at 8:04 PM, Otis Gospodnetic-5 [via Lucene] <
ml-node+s472066n4044861h28@n3.nabble.com> wrote:

> Hi,
>
> I'm not sure what the cause of this is, but:
> 1. no need to keep increasing max warming searchers. 2 is often enough
> 2. using cold searcher doesn't sound right - you should warm them up
> 3. solr 4.1 is out, consider using it
> 4. solr 4.2 may be out this month, consider trying the snapshot
> 5. no need to send the same email to the ML twice - it just annoys people
> and they may in fact not answer :)
>
> Otis
> --
> Solr & ElasticSearch Support
> http://sematext.com/
>
>
>
>
>
>
> On Tue, Mar 5, 2013 at 1:21 AM, Abhishek Pratap Singh <
> [hidden email] <http://user/SendEmail.jtp?type=node&node=4044861&i=0>>
> wrote:
>
> > Hi All,
> >
> > We had upgraded solr-3.6 to solr-4.0 some time back and since then we
> > keep encountering "Error opening new searcher" exception on
> > replication master. We found two suggestions on internet
> > 1. Increase the value of maxWarmingSearchers
> > 2. set the value of "useColdSearcher" as true
> >
> > We have applied both the suggestions and whenever we face this issue,
> > we increase the value of maxWarmingSearchers by 2. Current value is
> > 14. Is this the only solution? or can we calculate a number which is
> > suitable for our context.
> >
> > We never faced this issue in replication with solr-3.6.
> > Also since this exception is not "exceeded max warming searcher", now
> > I've started believing that increasing the maxWarmingSearchers may not
> > be the solution.
> >
> > Please guide.
> >
> > This problem appears during commit, usually every week, specially when
> > query rate is high. The only solution then remains to restart solr.
> > We are running 60GB index with 32G RAM (10G to solr)
> >
> > Following is the stack trace of exception
> >
> > 5 Mar, 2013 12:30:19 AM org.apache.solr.common.SolrException log
> > SEVERE: null:org.apache.solr.common.SolrException: Error opening new
> > searcher
> >         at
> > org.apache.solr.core.SolrCore.openNewSearcher(SolrCore.java:1310)
> >         at org.apache.solr.core.SolrCore.getSearcher(SolrCore.java:1422)
> >         at org.apache.solr.core.SolrCore.getSearcher(SolrCore.java:1200)
> >         at
> >
> org.apache.solr.update.DirectUpdateHandler2.commit(DirectUpdateHandler2.java:560)
>
> >         at
> >
> org.apache.solr.update.processor.RunUpdateProcessor.processCommit(RunUpdateProcessorFactory.java:87)
>
> >         at
> >
> org.apache.solr.update.processor.UpdateRequestProcessor.processCommit(UpdateRequestProcessor.java:64)
>
> >         at
> >
> org.apache.solr.update.processor.DistributedUpdateProcessor.processCommit(DistributedUpdateProcessor.java:1007)
>
> >         at
> >
> org.apache.solr.update.processor.LogUpdateProcessor.processCommit(LogUpdateProcessorFactory.java:157)
>
> >         at
> >
> org.apache.solr.handler.loader.XMLLoader.processUpdate(XMLLoader.java:250)
> >         at
> > org.apache.solr.handler.loader.XMLLoader.load(XMLLoader.java:157)
> >         at
> >
> org.apache.solr.handler.UpdateRequestHandler$1.load(UpdateRequestHandler.java:92)
>
> >         at
> >
> org.apache.solr.handler.ContentStreamHandlerBase.handleRequestBody(ContentStreamHandlerBase.java:74)
>
> >         at
> >
> org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:129)
>
> >         at org.apache.solr.core.SolrCore.execute(SolrCore.java:1699)
> >         at
> >
> org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:455)
>
> >         at
> >
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:276)
>
> >         at
> >
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1337)
>
> >         at
> >
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:484)
> >         at
> >
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
>
> >         at
> >
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:524)
> >         at
> >
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:233)
>
> >         at
> >
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1065)
>
> >         at
> >
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:413)
> >         at
> >
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:192)
>
> >         at
> >
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:999)
>
> >         at
> >
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
>
> >         at
> >
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:250)
>
> >         at
> >
> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:149)
>
> >         at
> >
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:111)
>
> >         at org.eclipse.jetty.server.Server.handle(Server.java:351)
> >         at
> >
> org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:454)
>
> >         at
> >
> org.eclipse.jetty.server.BlockingHttpConnection.handleRequest(BlockingHttpConnection.java:47)
>
> >         at
> >
> org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:900)
>
> >         at
> >
> org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:954)
>
> >         at
> org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:857)
> >         at
> > org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)
> >         at
> >
> org.eclipse.jetty.server.BlockingHttpConnection.handle(BlockingHttpConnection.java:66)
>
> >         at
> >
> org.eclipse.jetty.server.bio.SocketConnector$ConnectorEndPoint.run(SocketConnector.java:254)
>
> >         at
> >
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:599)
>
> >         at
> >
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:534)
>
> >         at java.lang.Thread.run(Thread.java:662)
> > Caused by: org.apache.lucene.store.AlreadyClosedException: this
> > IndexWriter is closed
> >         at
> > org.apache.lucene.index.IndexWriter.ensureOpen(IndexWriter.java:550)
> >         at
> > org.apache.lucene.index.IndexWriter.ensureOpen(IndexWriter.java:563)
> >         at
> > org.apache.lucene.index.IndexWriter.nrtIsCurrent(IndexWriter.java:4196)
> >         at
> >
> org.apache.lucene.index.StandardDirectoryReader.doOpenFromWriter(StandardDirectoryReader.java:266)
>
> >         at
> >
> org.apache.lucene.index.StandardDirectoryReader.doOpenIfChanged(StandardDirectoryReader.java:245)
>
> >         at
> >
> org.apache.lucene.index.StandardDirectoryReader.doOpenIfChanged(StandardDirectoryReader.java:235)
>
> >         at
> >
> org.apache.lucene.index.DirectoryReader.openIfChanged(DirectoryReader.java:169)
>
> >         at
> > org.apache.solr.core.SolrCore.openNewSearcher(SolrCore.java:1256)
> >         ... 40 more
> >
> >
> >
> > --
> > Regards
> > Abhishek Pratap Singh
> >
>
>
> ------------------------------
>  If you reply to this email, your message will be added to the discussion
> below:
>
> http://lucene.472066.n3.nabble.com/Error-opening-new-searcher-tp4044821p4044861.html
>  To start a new topic under Solr - User, email
> ml-node+s472066n472068h45@n3.nabble.com
> To unsubscribe from Solr - User, click here<http://lucene.472066.n3.nabble.com/template/NamlServlet.jtp?macro=unsubscribe_by_code&node=472068&code=YWJoaXNoZWtwcmF0YXAxM0BnbWFpbC5jb218NDcyMDY4fC0xODg4NzYwMjgw>
> .
> NAML<http://lucene.472066.n3.nabble.com/template/NamlServlet.jtp?macro=macro_viewer&id=instant_html%21nabble%3Aemail.naml&base=nabble.naml.namespaces.BasicNamespace-nabble.view.web.template.NabbleNamespace-nabble.view.web.template.NodeNamespace&breadcrumbs=notify_subscribers%21nabble%3Aemail.naml-instant_emails%21nabble%3Aemail.naml-send_instant_email%21nabble%3Aemail.naml>
>



-- 
Regards
Abhishek Pratap Singh




--
View this message in context: http://lucene.472066.n3.nabble.com/Error-opening-new-searcher-tp4044821p4045126.html
Sent from the Solr - User mailing list archive at Nabble.com.

Re: Error opening new searcher

Posted by Otis Gospodnetic <ot...@gmail.com>.
Hi,

I'm not sure what the cause of this is, but:
1. no need to keep increasing max warming searchers. 2 is often enough
2. using cold searcher doesn't sound right - you should warm them up
3. solr 4.1 is out, consider using it
4. solr 4.2 may be out this month, consider trying the snapshot
5. no need to send the same email to the ML twice - it just annoys people
and they may in fact not answer :)

Otis
--
Solr & ElasticSearch Support
http://sematext.com/





On Tue, Mar 5, 2013 at 1:21 AM, Abhishek Pratap Singh <
abhishekpratap13@gmail.com> wrote:

> Hi All,
>
> We had upgraded solr-3.6 to solr-4.0 some time back and since then we
> keep encountering "Error opening new searcher" exception on
> replication master. We found two suggestions on internet
> 1. Increase the value of maxWarmingSearchers
> 2. set the value of "useColdSearcher" as true
>
> We have applied both the suggestions and whenever we face this issue,
> we increase the value of maxWarmingSearchers by 2. Current value is
> 14. Is this the only solution? or can we calculate a number which is
> suitable for our context.
>
> We never faced this issue in replication with solr-3.6.
> Also since this exception is not "exceeded max warming searcher", now
> I've started believing that increasing the maxWarmingSearchers may not
> be the solution.
>
> Please guide.
>
> This problem appears during commit, usually every week, specially when
> query rate is high. The only solution then remains to restart solr.
> We are running 60GB index with 32G RAM (10G to solr)
>
> Following is the stack trace of exception
>
> 5 Mar, 2013 12:30:19 AM org.apache.solr.common.SolrException log
> SEVERE: null:org.apache.solr.common.SolrException: Error opening new
> searcher
>         at
> org.apache.solr.core.SolrCore.openNewSearcher(SolrCore.java:1310)
>         at org.apache.solr.core.SolrCore.getSearcher(SolrCore.java:1422)
>         at org.apache.solr.core.SolrCore.getSearcher(SolrCore.java:1200)
>         at
> org.apache.solr.update.DirectUpdateHandler2.commit(DirectUpdateHandler2.java:560)
>         at
> org.apache.solr.update.processor.RunUpdateProcessor.processCommit(RunUpdateProcessorFactory.java:87)
>         at
> org.apache.solr.update.processor.UpdateRequestProcessor.processCommit(UpdateRequestProcessor.java:64)
>         at
> org.apache.solr.update.processor.DistributedUpdateProcessor.processCommit(DistributedUpdateProcessor.java:1007)
>         at
> org.apache.solr.update.processor.LogUpdateProcessor.processCommit(LogUpdateProcessorFactory.java:157)
>         at
> org.apache.solr.handler.loader.XMLLoader.processUpdate(XMLLoader.java:250)
>         at
> org.apache.solr.handler.loader.XMLLoader.load(XMLLoader.java:157)
>         at
> org.apache.solr.handler.UpdateRequestHandler$1.load(UpdateRequestHandler.java:92)
>         at
> org.apache.solr.handler.ContentStreamHandlerBase.handleRequestBody(ContentStreamHandlerBase.java:74)
>         at
> org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:129)
>         at org.apache.solr.core.SolrCore.execute(SolrCore.java:1699)
>         at
> org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:455)
>         at
> org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:276)
>         at
> org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1337)
>         at
> org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:484)
>         at
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:119)
>         at
> org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:524)
>         at
> org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:233)
>         at
> org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1065)
>         at
> org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:413)
>         at
> org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:192)
>         at
> org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:999)
>         at
> org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:117)
>         at
> org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:250)
>         at
> org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:149)
>         at
> org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:111)
>         at org.eclipse.jetty.server.Server.handle(Server.java:351)
>         at
> org.eclipse.jetty.server.AbstractHttpConnection.handleRequest(AbstractHttpConnection.java:454)
>         at
> org.eclipse.jetty.server.BlockingHttpConnection.handleRequest(BlockingHttpConnection.java:47)
>         at
> org.eclipse.jetty.server.AbstractHttpConnection.content(AbstractHttpConnection.java:900)
>         at
> org.eclipse.jetty.server.AbstractHttpConnection$RequestHandler.content(AbstractHttpConnection.java:954)
>         at org.eclipse.jetty.http.HttpParser.parseNext(HttpParser.java:857)
>         at
> org.eclipse.jetty.http.HttpParser.parseAvailable(HttpParser.java:235)
>         at
> org.eclipse.jetty.server.BlockingHttpConnection.handle(BlockingHttpConnection.java:66)
>         at
> org.eclipse.jetty.server.bio.SocketConnector$ConnectorEndPoint.run(SocketConnector.java:254)
>         at
> org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:599)
>         at
> org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:534)
>         at java.lang.Thread.run(Thread.java:662)
> Caused by: org.apache.lucene.store.AlreadyClosedException: this
> IndexWriter is closed
>         at
> org.apache.lucene.index.IndexWriter.ensureOpen(IndexWriter.java:550)
>         at
> org.apache.lucene.index.IndexWriter.ensureOpen(IndexWriter.java:563)
>         at
> org.apache.lucene.index.IndexWriter.nrtIsCurrent(IndexWriter.java:4196)
>         at
> org.apache.lucene.index.StandardDirectoryReader.doOpenFromWriter(StandardDirectoryReader.java:266)
>         at
> org.apache.lucene.index.StandardDirectoryReader.doOpenIfChanged(StandardDirectoryReader.java:245)
>         at
> org.apache.lucene.index.StandardDirectoryReader.doOpenIfChanged(StandardDirectoryReader.java:235)
>         at
> org.apache.lucene.index.DirectoryReader.openIfChanged(DirectoryReader.java:169)
>         at
> org.apache.solr.core.SolrCore.openNewSearcher(SolrCore.java:1256)
>         ... 40 more
>
>
>
> --
> Regards
> Abhishek Pratap Singh
>