"(414) URI Too Long" and "(431) Request Header Fields Too Large" errors for Solr queries with many conditions


Description

Search operations might fail if the query length exceeds the Solr request header size limit. The following message can be found in the logs:

Exception: System.Net.WebException
Message: The remote server returned an error: (414) URI Too Long.
Source: System
   at System.Net.HttpWebRequest.GetResponse()
   at HttpWebAdapters.Adapters.HttpWebRequestAdapter.GetResponse()
   at SolrNet.Impl.SolrConnection.GetResponse(IHttpWebRequest request)
   at SolrNet.Impl.SolrConnection.Get(String relativeUrl, IEnumerable`1 parameters)

or

Exception: System.Net.WebException
Message: The remote server returned an error: (431) Request Header Fields Too Large.
Source: System
   at System.Net.HttpWebRequest.GetResponse()
   at HttpWebAdapters.Adapters.HttpWebRequestAdapter.GetResponse()
   at SolrNet.Impl.SolrConnection.GetResponse(IHttpWebRequest request)
   at SolrNet.Impl.SolrConnection.Get(String relativeUrl, IEnumerable`1 parameters)

Solution

To resolve the issue, consider the following options: