Hmmmm... the problem doesn't seem to be related to sorting at all, it looks like it has to do with the fact that most of the tests are reusing the same LocalSolrQueryRequest object over and over (just changing the params) assertQ calls close() on the request object, which decrements some refrence counting on the SolrIndexSearcher (which gets closed when there are no more refrences)
I'm guessing SolrCore keeps a refrence so normally a SolrIndexSearcher is only closed once the core and all requests are done with it -- but in the case of reusing LocalSolrQueryRequests, decref is probably getting called more often then it's incref. i can't believe we've never noticed this before. not sure what the best/easiest solution is ... change all hte tests to stop reusing the same Request object? change LocalSolrQueryRequests so the TestHarness can re-init it for each query? actaully ... the root of the disconnect seems to be that while SolrQueryRequestBase.close() does a decref, nothing in SolrQueryRequestBase does an incref because it relies on SolrCore.getSearcher doing the incref for it when returning the RefCounted<SolrIndexSearcher>. So what if SolrQueryRequestBase.close() nulled out searcherHolder after decrefing it ... then it would be safe to reuse a SolrQueryRequestBase right? -Hoss