[PATCH] Fix CTDB recovery record resurrection from inactive nodes and simplify vacuuming (bug #13641)

Martin Schwenke martin at meltin.net
Fri Oct 5 03:48:05 UTC 2018


When a CTDB node becomes active after being stopped or banned, records
that have been deleted and vacuumed on other nodes can be resurrected
from newly active nodes during recovery.  This can be fixed by marking
volatile databases as invalid when a node becomes inactive and avoiding
pulling records from invalid databases.

Following this, vacuuming can be simplified by reverting to a 2 phase
model.  The current 3 phase vacuuming was created to solve the record
resurrection problem, which is now solved more generally.

All but 1 of the commits here are Amitay's and are posted with my
Reviewed-by:.  The additional commit by me is a test that demonstrates
the problem (and confirms the solution) and needs review.

Please review and maybe push...

peace & happiness,
martin
-------------- next part --------------
A non-text attachment was scrubbed...
Name: ctdb.patch
Type: text/x-patch
Size: 39315 bytes
Desc: not available
URL: <http://lists.samba.org/pipermail/samba-technical/attachments/20181005/06a86fdc/ctdb.bin>


More information about the samba-technical mailing list