Improved handling of timeout error responses. The runtime exceptions that can now short-cut the execution of calls to Lucene are caught and reported back, not as a fatal error but the existing “timedOut” flag in results. Phases like the FetchPhase can now exit early and so also have a timed-out status. The SearchPhaseController does its best to assemble whatever hits, aggregations and facets have been produced within the provided time limits rather than returning nothing and throwing an error.