Opened 14 years ago

Closed 11 years ago

#436 closed defect (fixed)

Add "force" mode to replication client to force a full copy

Reported by: Richard Boulton Owned by: Olly Betts
Priority: normal Milestone: 1.2.13
Component: Replication Version: SVN trunk
Severity: normal Keywords:
Cc: Blocked By:
Blocking: Operating System: All

Description

It would be useful to be able to force the replication client to perform a full copy of a database, even if it thinks it already has a fully up-to-date copy.

This could be of use if the master replication copy gets reverted to an earlier revision, or if a corrupt replication has happened for some reason. This happened to me in practice when a master replication copy was restored from backup storage: the clients were not performing a synchronisation step automatically because their revision number ended up being greater than that of the master copy.

It's generally useful to be able to manually force a known clean copy of the database in this type of situation.

The replication protocol and replication APIs don't need any changes to support this: the client just needs to pretend that it doesn't have a copy of the database at all currently. Therefore, this can be implemented sometime in the 1.2.x series.

Change History (3)

comment:1 by Olly Betts, 13 years ago

Component: OtherReplication

comment:2 by Olly Betts, 11 years ago

Milestone: 1.2.x1.2.13
Owner: changed from Richard Boulton to Olly Betts

Implemented in trunk r16882. There's a new testcase replicate6 which tests the same codepath, though not via the xapian-replicate binary (as the replication tests don't run the binary).

Patch is simple, so I will look at backporting.

comment:3 by Olly Betts, 11 years ago

Resolution: fixed
Status: newclosed

Backported for 1.2.13 in r16887.

Note: See TracTickets for help on using tickets.