daemon: Change the default recovery method for persistent databases
authorAmitay Isaacs <amitay@gmail.com>
Mon, 28 Oct 2013 07:49:51 +0000 (18:49 +1100)
committerAmitay Isaacs <amitay@gmail.com>
Mon, 28 Oct 2013 07:51:22 +0000 (18:51 +1100)
Use sequence numbers to do recovery for persistent databases instead of
RSNs.  This fixes the problem of registry corruption during recovery.

Signed-off-by: Amitay Isaacs <amitay@gmail.com>
doc/ctdbd.1.xml
server/ctdb_tunables.c

index 111a8f40ca4f04815c89a892ca5019f7199213e7..75974cf708db63435b7a94e95ad4fe7d536d1221 100644 (file)
     </refsect2>
 
     <refsect2><title>RecoverPDBBySeqNum</title>
-    <para>Default: 0</para>
+    <para>Default: 1</para>
     <para>
-    When set to non-zero, this will change how the recovery process for
-    persistent databases ar performed. By default, when performing a database
-    recovery, for normal as for persistent databases, recovery is
+    When set to zero, database recovery for persistent databases is
     record-by-record and recovery process simply collects the most recent
     version of every individual record.
     </para>
     highest value stored in the record "__db_sequence_number__" is selected
     and the copy of that nodes database is used as the recovered database.
     </para>
+    <para>
+    By default, recovery of persistent databses is done using
+    __db_sequence_number__ record.
+    </para>
+
     </refsect2>
 
     <refsect2><title>FetchCollapse</title>
index 5fb4344e2b7f246150b6ca45ad769cafa155ceea..4c139ea2a600aa19b30f08ec73a6ee53447113d7 100644 (file)
@@ -72,7 +72,7 @@ static const struct {
        { "StatHistoryInterval",  1,  offsetof(struct ctdb_tunable, stat_history_interval), false },
        { "DeferredAttachTO",  120,  offsetof(struct ctdb_tunable, deferred_attach_timeout), false },
        { "AllowClientDBAttach", 1, offsetof(struct ctdb_tunable, allow_client_db_attach), false },
-       { "RecoverPDBBySeqNum",  0, offsetof(struct ctdb_tunable, recover_pdb_by_seqnum), false },
+       { "RecoverPDBBySeqNum",  1, offsetof(struct ctdb_tunable, recover_pdb_by_seqnum), false },
        { "DeferredRebalanceOnNodeAdd", 300, offsetof(struct ctdb_tunable, deferred_rebalance_on_node_add) },
        { "FetchCollapse",       1, offsetof(struct ctdb_tunable, fetch_collapse) },
        { "HopcountMakeSticky",   50,  offsetof(struct ctdb_tunable, hopcount_make_sticky) },