Upon examining the Solr source code it appears that it was unable to even make a connection in the time allowed. While the error message was a bit confusing, I do understand what it means.
> On May 12, 2020, at 2:08 PM, Phill Campbell <sirgilli...@yahoo.com.INVALID> > wrote: > > > > org.apache.solr.client.solrj.SolrServerException: Time allowed to handle this > request exceeded:… > at > org.apache.solr.client.solrj.impl.LBSolrClient.request(LBSolrClient.java:345) > at > org.apache.solr.client.solrj.impl.BaseCloudSolrClient.sendRequest(BaseCloudSolrClient.java:1143) > at > org.apache.solr.client.solrj.impl.BaseCloudSolrClient.requestWithRetryOnStaleState(BaseCloudSolrClient.java:906) > at > org.apache.solr.client.solrj.impl.BaseCloudSolrClient.request(BaseCloudSolrClient.java:838) > at > org.apache.solr.client.solrj.SolrRequest.process(SolrRequest.java:211) > at org.apache.solr.client.solrj.SolrClient.query(SolrClient.java:1035) > ... > at javax.swing.SwingWorker$1.call(SwingWorker.java:295) > at java.util.concurrent.FutureTask.run$$$capture(FutureTask.java:266) > at java.util.concurrent.FutureTask.run(FutureTask.java) > at javax.swing.SwingWorker.run(SwingWorker.java:334) > at > java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) > at > java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) > at java.lang.Thread.run(Thread.java:748) > Caused by: > org.apache.solr.client.solrj.impl.HttpSolrClient$RemoteSolrException: Error > from server at http://10.156.112.50:10001/solr/BTS: > java.lang.NullPointerException > > at > org.apache.solr.client.solrj.impl.HttpSolrClient.executeMethod(HttpSolrClient.java:665) > at > org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:265) > at > org.apache.solr.client.solrj.impl.HttpSolrClient.request(HttpSolrClient.java:248) > at > org.apache.solr.client.solrj.impl.LBSolrClient.doRequest(LBSolrClient.java:368) > at > org.apache.solr.client.solrj.impl.LBSolrClient.request(LBSolrClient.java:296) > > > The timeAllowed is set to 8 seconds. I am using a StopWatch to verify that > the round trip was greater than 8 seconds. > > Documentation states: > > timeAllowed Parameter > This parameter specifies the amount of time, in milliseconds, allowed for a > search to complete. If this time expires before the search is complete, any > partial results will be returned, but values such as numFound, facet counts, > and result stats may not be accurate for the entire result set. In case of > expiration, if omitHeader isn’t set to true the response header contains a > special flag called partialResults. > > I do not believe I should be getting an exception. > > I am load testing so I am intentionally putting pressure on the system. > > Is this the correct behavior to throw an exception? > > Regards.