On Thu, Jan 14, 2010 at 6:30 AM, wojtekpia <wojte...@hotmail.com> wrote:

>
> I have a deployment with 2 indexers (2 cores in a single servlet
> container),
> and a farm of searchers that replicate from one of the indexers. Once in a
> while I need to re-index all my data, so I do that on my second indexer
> (while my original indexer still gets incremental updates), then swap my
> indexer cores. What's the condition that slaves check before replicating
> the
> master's data? I'm concerned that if it's purely based on index version or
> generation number, then my new index may appear older than the old one, and
> the searchers won't synchronize to it. I haven't been able to simulate the
> scenario I'm afraid of yet (searchers always seem to replicate after I swap
> cores), but I want to make sure I'm not just getting lucky. I realize I
> could force each searcher to synchronize with command=fetchindex, but I'd
> prefer to set something on the indexer than on each searcher.
>
>
> I'm using Solr 1.4 and using built-in replication via ReplicationHandler.
>
>
The slaves check if they have the same index version and generation number
as the master. If the generation is earlier than the master then only the
files missing on the slave are copied over from the master. If the
generation is greater than or equal to master then all the index files are
replicated from master.

In your case, I'm guessing that when you do a full re-index, you probably
start from an empty index and therefore, the generation of the master index
is always less than the slave's index. This causes all the files to be
replicated. If that is the case then you don't need to worry.

-- 
Regards,
Shalin Shekhar Mangar.

Reply via email to