We have a bunch of user caches that return DocSet objects. So, we intersect them and send a DocSet filter and the actual query to getDocListAndSet or getDocList. The problem here is that the calls in SolrIndexSearcher don't appear to use the QueryResultsCache if the filer is a DocSet rather than a List<Query>.
So, the end result is that our new version of Solr is slower than our old version. Our old version cached Query objects instead of DocSets. However, it had quite a few other problems. I thought it would be an improvement to use DocSets. Is it recomended to re-work the caches to return Query objects and use that as my filterList? Our index size is about million documents. Our typical result set size is about 15, but can occasionally be in the range of 5,000-15,000.