On 2/9/2016 5:48 PM, Walter Underwood wrote: > Updating two systems in parallel gets into two-phase commit, instantly. So > you need a persistent pool of updates that both clusters pull from.
My indexing system does exactly what I have suggested for tedsolr -- it updates multiple copies of my index in parallel. My data source is MySQL. For each copy, information about the last successful update is separately tracked, so if one of the index copies goes offline, the other stays current. When the offline system comes back, it will be updated from the saved position, and will eventually have the same information as the system that did not go offline. As far as two-phase commit goes, that would make it so that neither copy of the index would stay current if one of them went offline. In most situations I can think of, that's not really very useful. Thanks, Shawn