: we have quite a problem with Solr. We are running it in a config 6x3, and : suddenly solr started to hang, taking all the available cpu on the nodes. : : In the threads dump noticed things like this can eat lot of CPU time : : : - org.apache.solr.search.LRUCache.put​(LRUCache.java:116) : - : org.apache.solr.search.SolrIndexSearcher.doc​(SolrIndexSearcher.java:705)
That specific code path pertains to the documentCache - this particular thread appears to be blocked on inserting docs into that (synchronized) map because of some other thread already doing an insert. depending on your usage patterns, you may find it better to just disable the documentCache completley -- it's primarily useful when you have lots of stored fields in your docs, and a lot of "hot" documents that are frequently returned by a lot of different searches (ie: because you always sort on the same sets of fields) ... but if you aren't seeing any hits on your documentCache, just get rid of it. the choice of having a documentCache and what type of cacheImpl to use for the doc cache can be completley independent of what impl you use ofr oher caches (maybe you disable the doc cache, use LRU for the filterCache, and LFU for the queryResultCache -- they are all independently configurable, one size doesn't neccessarily fit all) -Hoss http://www.lucidworks.com/