On 15-Jan-08, at 1:07 PM, Otis Gospodnetic wrote:

Summary: How about having more than 1 (Solr)IndexSearcher per index in order to avoid Lucene's synchronization bottlenecks?

There are those few synchronized points in Lucene - the stuff around IndexInput and such. One in a while I hear from people who've done extensive benchmarking or run systems with high QPS, and they point to these points as Lucene weaknesses/bottlenecks, at least in their high QPS environments. While ideally Lucene could potentially fix that to minimize the number of synchronized blocks, my guess is that would be a huge undertaking requiring good understanding of low-level Lucene (hard!). One can try to work around that by using multiple IndexSearchers, right? (Hmmmm..... or maybe that won't help, as they will share the same (FS)Directory instance?) If so, if multiple (Solr)IndexSearchers would help, should we add this to Solr? I'm guessing SolrCore would be the only place that would need to be changed?

Hmm, why not just have multiple cores, or multiple webapps pointing to the same directory?

It's hard to imagine that that would be a good idea, however. You'd have to duplicate all the solr-level /and/ lucene-level caching for each core (fieldcache, etc).

-Mike

Reply via email to