Opened 16 years ago
Closed 13 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 , 14 years ago
| Component: | Other → Replication |
|---|
comment:2 by , 13 years ago
| Milestone: | 1.2.x → 1.2.13 |
|---|---|
| Owner: | changed from to |
comment:3 by , 13 years ago
| Resolution: | → fixed |
|---|---|
| Status: | new → closed |
Backported for 1.2.13 in r16887.

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.