Replication does not transfer files that already exist on the slave and have the same metadata (size, last modified, etc) as the master. As far as deleting files, it will only do so if they do not exist on the master.

In most cases, the only way that it would delete and copy the entire index is if the slave index were optimized after updating, which would result in different filenames with entirely different sizes and modification times.

The wiki has more detail:

http://wiki.apache.org/solr/SolrReplication#How_does_it_work.3F

My build scripts use DIH full-import for a reindex, DIH delta-import for adding new content, and the XML update handler for deletes. Replication is very fast after an update on the master. I've got my replication interval set to 15 seconds, and once it's triggered, it typically only takes a second or two. I optimize one of my shards every day, and when that happens, replicating that shard (12GB) does take a little while.


On 7/8/2010 10:48 PM, bbarani wrote:
One final question about replication.. When I initiate replication I thought
SOLR would delete the existing index in slave and just transfers the master
index in to Slave. If thats the case there wont be any sync up issues right?

I am asking this because everytime I initiate replication the index size of
both slave and master becomes the same  (even if for some reason if index
size of slave is bigger than master it gets reduced to the same size as
master after replication) so thought that SOLR just deletes the slave index
and then moves all the files from master..

Reply via email to