Solr’s three main caches reuse different things: filterCache keeps unordered sets of documents matching parsed queries, queryResultCache keeps ordered document-ID lists for a query, sort, and result window, and documentCache keeps loaded Lucene documents with stored fields. Their usefulness depends on repeated request patterns, memory use, and how often a new searcher opens—not on one universally correct cache size.
What each Solr cache stores
These caches are not interchangeable. One can reuse which documents match a condition, another can reuse the ordered page of results, and another can reuse stored fields loaded for documents.
| Cache | What it stores | Typical use |
|---|---|---|
filterCache |
Parsed queries paired with unordered sets of matching documents. | Reuse matching-document sets, commonly for fq filters. |
queryResultCache |
Ordered lists of document IDs (DocList) determined by a query, sort, and requested result range. | Reuse the same search result list or a cached result window. |
documentCache |
Lucene Document objects containing stored fields. |
Reuse loaded stored-field documents rather than fetching them again. |
The definitions and behavior below follow Apache Solr’s rolling Caches and Query Warming guide, accessed October 3, 2026. Because the guide’s latest version can change, check the documentation for your installed Solr release for exact defaults and supported properties.
How filterCache differs from queryResultCache
filterCache: reuse the matching set
A filter-cache entry is an unordered set of all documents matching a parsed query. The common case is an fq parameter: Solr can cache each filter’s set independently, then intersect the sets to apply multiple filters to a request. This is useful when filters recur across searches, even if the main query or sort differs.
#1 Best Overall
- Dell PowerEdge R730xd 24B SFF 2U Server
- 2x Intel Xeon E5-2690 v4 2.6Ghz 14-Core (28-cores Total)
- 128GB DDR4 RAM – 4x 1.2TB 10K SAS 2.5” 12Gb/s
- Dell H730P mini 2GB 12Gb/s RAID
- 2x 750W PSU - 2x 10Gb SFP+ 2x 1Gb (RJ45) NIC
Solr’s Common Query Parameters guide describes separate fq parameters as intersected filters. Keep independently useful conditions separate so their matching sets can be reused; conditions nearly always used together may be combined. In the default Lucene query parser, filter(condition) syntax can also cache a clause individually. The filter cache is also used for faceting when facet.method=fc.
Not every filter merits caching. A one-off filter may consume cache space without being reused. A local parameter such as cache=false can bypass the filter cache for a filter unlikely to repeat.
Rank #2
- Model: Dell OptiPlex 7050 Small Form Factor (SFF)
- Processor: Intel Core i7-7700 3.60 GHz
- Memory: 32GB DDR4 Ram
- Storage: 1TB Solid State Drive (SSD) Fast Boot + Storage
- Operating System: Windows 11 Pro (64-bit)
queryResultCache: reuse an ordered result list
The query-result cache stores an ordered DocList, so its key reflects the query, sort, and requested range—not merely which documents matched. It is therefore useful when requests repeat with the same result ordering and page or compatible result window.
queryResultWindowSize can let Solr cache a superset of a requested page. The Solr guide’s example: with a window size of 50, a request for documents 10–19 can cache documents 0–49. queryResultMaxDocsCached limits the number of documents held for any one entry. A larger window may help adjacent-page requests, but it can also retain more document IDs; test against the actual paging pattern.
Crashes, No Sound, or Screen Glitches?
Random freezes, missing sound and display glitches usually trace back to one bad driver. Find and replace yours safely.Free scan · under a minutePC Slower Than It Used to Be?
A free scan shows the junk files, broken settings and background clutter dragging Windows down - then fixes them in one click.Free scan · Windows 10 & 11Rank #3
- 2.80 GHz processor speed ensures efficient operation with consistent reliability
- Intel Xeon 2.80 GHz processor provides enterprise-grade performance with built-in security and remote management capabilities
- Quad-core (4 Core) processor core helps server process data quickly and reliably for maximum productivity
- 1 processors supported for faster processing and improved access to data, optimizing performance under heavy loads
- With 16 GB memory, you can multitask between applications seamlessly, keeping productivity high and response times quick
What documentCache does
documentCache holds Lucene Document instances with stored fields. It supports retrieval of those stored values after result IDs have been determined; it does not replace either the matching-set cache or the ordered result-list cache.
Lucene internal document IDs are transient, so this cache cannot be auto-warmed from an old searcher into a new one. Solr’s guide advises sizing it above max_results × max_concurrent_queries so a request need not refetch a document. Treat that as a sizing consideration, not a guaranteed memory formula: storing more fields increases document-cache memory use. Do not configure maxRamMB for this cache; Solr warns that its memory consumption is not calculated properly and it may use much more memory than anticipated.
Rank #4
- MODEL P74439-005: Compact and affordable HPE ProLiant MicroServer Gen11 powered by Intel Pentium Gold G7400 3.7GHz processor, ideal for file sharing, NAS, and basic business workloads
- READY OUT OF THE BOX: Includes 16GB DDR5 UDIMM memory (expandable to 128GB), one 1TB SATA 6G Business Critical HDD, embedded Intel VROC SATA, dedicated iLO-M.2 port kit, 180w external power adapter and 1/1/1 warranty for dependable plug-and-play server operation
- WHISPER-QUIET & SPACE-SAVING: Ultra-compact mini tower design fits easily in small office spaces; supports wall, flat, or vertical placement for deployment flexibility
- INTEGRATED REMOTE MANAGEMENT: Comes with HPE iLO 6 and embedded TPM 2.0 for secure, license-free remote server administration through shared port access
- EXPANDABLE DESIGN: Two PCIe slots (including PCIe 5.0) and four LFF-NHP drive bays provide robust options for storage and component scalability. Features new MR408i-p controller support for enhanced storage performance
Why searcher lifecycle changes cache behavior
Solr attaches caches to an Index Searcher and its fixed view of the index. Entries remain valid for that searcher’s lifetime. When a new searcher opens, the current searcher can continue serving requests while the new one warms; after it is ready, it serves new requests, and the old one closes after outstanding requests finish. A commit clears caches for the new searcher, so entries must be populated again.
For CaffeineCache, autowarmCount accepts an integer or percentage to control how many entries are warmed from the prior cache. Warming can reduce the cold-cache period, but it also takes time and resources. The document cache is the exception noted above: transient Lucene IDs prevent its entries from being auto-warmed.
The Tool Desk
Outbyte Driver Updater FREEScan for outdated or missing drivers - takes under a minuteDriver Scan →Outbyte PC Repair FREEClear out junk files and repair common Windows errorsFree Scan →Best Value
- HP Z4 G4 Workstation Tower
- Intel Xeon W-2133 6-Core 3.6GHz (3.9GHz Turbo)
- 64GB DDR4 Memory - Nvidia Quadro P400 2GB
- 512GB NVMe M.2 SSD (boot) + 2TB HDD (storage)
- Windows 11 Pro 64-bit
The reference guide describes CaffeineCache eviction as Window TinyLFU, which considers frequency and recency. It documents async as enabled by default; asynchronous caching can help when concurrent queries request the same result set before it is cached. Child-document and join queries require async cache enabled. Confirm defaults and requirements against the installed release rather than assuming every version behaves identically.
How to tune Solr cache sizes
Start from observed request patterns and memory, then change one cache at a time. Solr’s guide identifies entry count, hit ratio, and evictions as useful measures. A low hit ratio can be normal if queries rarely repeat; with a large configured cache, it can also suggest memory might be reclaimed. High evictions may mean a cache is too small for its workload, but increasing its size is a hypothesis to validate, not a universal fix.
- Measure each cache separately. Record its current entries, RAM use, lookups, hits, misses, inserts, and evictions before changing configuration.
- Relate metrics to workload. Compare hit ratio with memory footprint, evictions with query repetition, and warm-up duration with the time a new searcher needs to become ready.
- Account for deployment scope. The performance reference reports cache statistics per core; in SolrCloud, they correspond to an individual replica. Compare hot replicas and cores rather than pooling metrics in a way that hides them.
- Make a measured adjustment. Change a relevant limit or cache behavior, then compare the same metrics under a representative workload. Keep the change only if its performance and memory trade-off is acceptable.
The Solr Performance Statistics Reference lists cache operations (inserts and evictions), lookups (hits and misses), current entries, and RAM bytes used. Its documented example requests cache metrics at /solr/admin/metrics?category=CACHE. The rolling metrics guide notes that Solr 10 introduced metric-name and endpoint changes, and describes those metrics as Beta and subject to change in minor releases. Check the documentation for your installed version before building dashboards or relying on specific names.
Configuration knobs and version checks
The Solr Config API documents cache properties including class, size, initial size, auto-warm count, maximum RAM, and regenerator for filter, query-result, and document caches. Use the configuration path and properties supported by your deployed release.
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
Other documented knobs are workload-dependent, not target values. maxIdleTime is measured in seconds; zero disables idle-time eviction. The guide gives 60–3600 seconds as a reasonable range depending on workload and warns that too-short idle expiration can produce repeated evictions and misses. Where a supported cache uses both size and maxRamMB, the RAM limit takes precedence. Verify which limits apply to the cache and release you are configuring.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.




