>From what I can tell, I think you simply need a coordinator component that is >aware of both M1 and M2, allows only one of them to be modified at the time, >and (r)syncs the index from the most recently updated machine/index to the one >it is about to switch to. I don't think there is a way to do that with >absolutely no interruption in service, but your coordinator component could be >smart enough to buffer (RAM or disk) any requests it intercepts while the >switch is in progress.
You could also have M1 and M2 access the same index instance (e.g. on a SAN) and avoid index replication, thus minimizing interruption time. Otis -- Sematext -- http://sematext.com/ -- Lucene - Solr - Nutch ----- Original Message ---- > From: Jacob Singh <[EMAIL PROTECTED]> > To: solr-user@lucene.apache.org > Sent: Tuesday, June 10, 2008 4:33:10 AM > Subject: Master -> Master replication > > Hi again :) > > I'm also working on a scenario where there is an architecture like this: > > (here comes poor man's Visio) > > M2 > | > M1 > | > --- > / \ > S1 S2 > > > > The catch is M2 isn't always online. The idea being, M1 is online to > take small updates like removing a certain entry from index or one off > changes. M2 is a monster machine who only comes around to do wholesale > index updates every day. > > I've been mulling it over, and I'm thinking I'll have to start M2 as a > slave (grab the latest index from M1), and then have my load balancer > switch the index URL to M2, so it gets all of the calls M1 was getting > (but how to do this without an interruption of service???) > > Then M2 runs its massive updates, M1 grabs the snapshot from M2 and > installs it, and then the load balancer starts pointing update requests > back to M1, and M2 leaves the array. > > This would kinda work I suppose, however, there would have to be > interruption of service when we were doing the little master switch > routine, otherwise they might get out of sync. Any ideas on how to > address this? > > Is there some kind of index queue service out there which would save the > XML being sent for indexing in a NFS mount so that it could be read > after the switch? > > Best, > Jacob