Error when submitting large query strings

Symptoms

When submitting a large query string, the following error message is returned:

Exception in thread "main" org.apache.solr.common.SolrException: Server at http://localhost:8888/solr returned non ok status:413, message:FULL head
at org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:372)
at org.apache.solr.client.solrj.impl.HttpSolrServer.request(HttpSolrServer.java:181)
at org.apache.solr.client.solrj.request.QueryRequest.process(QueryRequest.java:90)

 

Cause

This issue can happen when the length of the query object submitted to Solr is larger than the maximum header size allowed by the container running Solr.

 

Solution

1. You could try submitting the query using POST which allows larger size requests than GET

[OR]

2. Increase the header size for the Jetty container (set to 4KB by default)
A. Backup and edit the jetty.xml under [LWE_HOME]/conf/jetty/lwe-core/etc/
B. Add the following Set element to the New element within Call -> Arg:
<Set name="requestHeaderSize">8192</Set>
The above example sets the size to 8KB, you may want to try to increase it as needed.

For instance:
<Call name="addConnector">
<Arg>
<New class="org.eclipse.jetty.server.bio.SocketConnector">
<Set name="port"><SystemProperty name="jetty.port" default="8888"/></Set>
<Set name="maxIdleTime">50000</Set>
<Set name="lowResourceMaxIdleTime">1500</Set>
<Set name="requestHeaderSize">8192</Set>
</New>
</Arg>
</Call>

C. Restart the LucidWorks service

Have more questions? Submit a request

0 Comments

Please sign in to leave a comment.
Powered by Zendesk