On 6/3/2013 8:43 AM, Bernd Fehling wrote: > Hi Shawn, > well, the user is "the world" and the servers have enough capacity. > So its nothing really to worry about. > OK, could raise timeout from standard 60 to 90, 120 or even 180 seconds. > Just wanted to know how other solr developer handle this. > > The technical question, where is the difference between hitting > the stop button from the browser while a search is running and > the timeout of http connection in my container (in my case jetty)? > > I guess the stop button from the browser will inform all parts involved > whereas the timeout just leaves an open end somewhere in the container > (broken pipe)? > > And the container has no way to simulate a "browser stop button" in case of a > timeout > to get a sane termination?
The result is probably the same, no matter how the connection gets closed. I've seen it mostly from my load balancer, and most often with the layer 7 check that uses my ping handler. It has a timeout of 5 seconds, and occasionally (usually due to garbage collection pauses) the query will take longer than 5 seconds. The load balancer closes the connection with a TCP reset, which is a perfectly valid (and very fast) way to close a TCP connection. The exception isn't coming from unclean closes, it's coming from ANY close. I think that Solr shouldn't log a full stacktrace when this happens, but I'm not sure whether Solr has any control over it, because the exception comes from Jetty. Thanks, Shawn