lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Elaine Cario (JIRA)" <j...@apache.org>
Subject [jira] [Commented] (SOLR-7951) LBHttpSolrClient wraps ALL exceptions in "No live SolrServers available to handle this request" exception, even usage errors
Date Thu, 20 Aug 2015 17:59:46 GMT

    [ https://issues.apache.org/jira/browse/SOLR-7951?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14705436#comment-14705436
] 

Elaine Cario commented on SOLR-7951:
------------------------------------

Yes - the original exception does get wrapped, and we'll need to unwrap it in our app as a
workaround so we can get at the correct exception to display back to the user (and keep Operations
from panicking!), at least until it can be fixed in Solr.  I've pasted the full message below
(with server info redacted):

<lst name="error">
  <str name="msg">org.apache.solr.client.solrj.SolrServerException: No live SolrServers
available to handle this request:[http://...]</str>
  <str name="trace">org.apache.solr.common.SolrException: org.apache.solr.client.solrj.SolrServerException:
No live SolrServers available to handle this request:[http://...]
	at org.apache.solr.handler.component.SearchHandler.handleRequestBody(SearchHandler.java:311)
	at com.wolterskluwer.atlas.solr.requesthandlers.WKRequestHandler.handleRequestBody(WKRequestHandler.java:123)
	at org.apache.solr.handler.RequestHandlerBase.handleRequest(RequestHandlerBase.java:135)
	at org.apache.solr.core.SolrCore.execute(SolrCore.java:1967)
	at org.apache.solr.servlet.SolrDispatchFilter.execute(SolrDispatchFilter.java:777)
	at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:418)
	at org.apache.solr.servlet.SolrDispatchFilter.doFilter(SolrDispatchFilter.java:207)
	at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:241)
	at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
	at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
	at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
	at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:170)
	at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98)
	at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
	at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
	at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
	at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1040)
	at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:607)
	at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:313)
	at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
	at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
	at java.lang.Thread.run(Thread.java:745)
Caused by: org.apache.solr.client.solrj.SolrServerException: No live SolrServers available
to handle this request:[http://...]
	at org.apache.solr.client.solrj.impl.LBHttpSolrServer.request(LBHttpSolrServer.java:319)
	at org.apache.solr.handler.component.HttpShardHandlerFactory.makeLoadBalancedRequest(HttpShardHandlerFactory.java:205)
	at org.apache.solr.handler.component.HttpShardHandler$1.call(HttpShardHandler.java:162)
	at org.apache.solr.handler.component.HttpShardHandler$1.call(HttpShardHandler.java:119)
	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
	at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
	at java.util.concurrent.FutureTask.run(FutureTask.java:262)
	... 3 more
Caused by: org.apache.solr.client.solrj.impl.HttpSolrServer$RemoteSolrException: Exceeded
maximum of 1000 basic queries.
	at org.apache.solr.client.solrj.impl.HttpSolrServer.executeMethod(HttpSolrServer.java:550)
	at org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:210)
	at org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:206)
	at org.apache.solr.client.solrj.impl.LBHttpSolrServer.doRequest(LBHttpSolrServer.java:340)
	at org.apache.solr.client.solrj.impl.LBHttpSolrServer.request(LBHttpSolrServer.java:309)
	... 9 more
</str>

> LBHttpSolrClient wraps ALL exceptions in "No live SolrServers available to handle this
request" exception, even usage errors
> ----------------------------------------------------------------------------------------------------------------------------
>
>                 Key: SOLR-7951
>                 URL: https://issues.apache.org/jira/browse/SOLR-7951
>             Project: Solr
>          Issue Type: Bug
>          Components: SolrJ
>    Affects Versions: 5.2.1
>            Reporter: Elaine Cario
>            Priority: Minor
>
> We were experiencing many "No live SolrServers available to handle this request" exception,
even though we saw no outages with any of our servers.  
> It turned out the actual exceptions were related to the use of wildcards in span queries
(and in some cases other invalid queries or usage-type issues). Traced it back to LBHttpSolrClient
which was wrapping all exceptions, even plain SolrExceptions, in that outer exception.  
> Instead, wrapping in the out exception should be reserved for true communication issues
in SolrCloud, and usage exceptions should be thrown as is.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org


Mime
View raw message