Regarding point 4, you will have to reload the indexes to preserve consistency among the indexes. When yo perform a commit in solr you have (for an instant) two versions of the index. The commit produces new segments (with new documents, new deletions, etc). After creating these new segments a new index searcher is created and its caches begin to autowarm. At this point the old index searcher that you were using is still active receiving requests. After the new index searcher finishes loading and autowarming the old searcher is discarded. I think that the coordination needed to accomplish the same functionality in a distributed environment (ie having multiple solr instances accessing the same files) will be unnecessarily complicated.
Also is generally recommended to have the index stored locally for performance. Even if a distributed file system is available the most performant solution is to have the index stored locally in a disk (and much simpler) So in my opinion "replicating the state" is far easier than "sharing the state". Thank you Emmanuel 2011/7/26 Gaetano Giunta <giunta.gaet...@gmail.com> > Hello > > I've been looking for a definitive answer to the question: "is it possible > to run Solr on multiple servers with a shared index folder instead of the > native master/slave configuration?" > > So far I have found two threads in this ml about the topic: > http://lucene.472066.n3.**nabble.com/Multiple-Solr-** > servers-and-a-shared-index-vs-**master-slaves-td934359.html<http://lucene.472066.n3.nabble.com/Multiple-Solr-servers-and-a-shared-index-vs-master-slaves-td934359.html> > http://lucene.472066.n3.**nabble.com/Shared-index-base-**td484439.html<http://lucene.472066.n3.nabble.com/Shared-index-base-td484439.html> > > But I am still not 100% sure. From what I understand: > 1. having many servers serving reads and one doing writes might work - many > servers doing writes definitely not > 2. using lockType=native is a good idea whenever there is more than one > process at a time accessing the index file... > 3. ...which I suppose means that Solr will use flock() calls. Hence the > need for a filesystem supporting them (eg. ocfs2 and gfs preferred to nfs) > 4. "sending commit commands makes readers re-read the indexes" > > About point 4: does this mean only the readers on the current server, or > the readers on other servers too? > If the latter is the case, then this kind of setup is basically only good > to have an active/passive cluster with a fast failover, not for doing > master/slave load balancing. > > Bye > Gaetano > > ps: please understand that I'd much rather go with native master/slave or > with the upcoming zookeeper-based configurations, but the setup described > above I have found installed at some customer... >