summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRonnie Sahlberg <ronniesahlberg@gmail.com>2011-07-20 14:25:29 +1000
committerRonnie Sahlberg <ronniesahlberg@gmail.com>2011-08-23 10:30:57 +1000
commit59d8d9b695baf8db3772168a0c6254d614f0d9ba (patch)
tree8d0d5355693b1b66c6e14dab584918a6ffc7f829
parent07d995ab725fa19b8bdf8a81db5c782c401e8629 (diff)
downloadsamba-59d8d9b695baf8db3772168a0c6254d614f0d9ba.tar.gz
samba-59d8d9b695baf8db3772168a0c6254d614f0d9ba.tar.xz
samba-59d8d9b695baf8db3772168a0c6254d614f0d9ba.zip
ReadOnly: Once recovery has finished, make sure to free all revoke child processes and trigger the destructors for all deferred calls to re-queue the original packets to the input packet processing function
(This used to be ctdb commit 530a78aa05910beeca0867c4dbe226d4ce73f946)
-rw-r--r--ctdb/server/ctdb_recover.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/ctdb/server/ctdb_recover.c b/ctdb/server/ctdb_recover.c
index 71f9b6eec6..85b44b4734 100644
--- a/ctdb/server/ctdb_recover.c
+++ b/ctdb/server/ctdb_recover.c
@@ -498,6 +498,10 @@ int32_t ctdb_control_push_db(struct ctdb_context *ctdb, TDB_DATA indata)
tdb_close(ctdb_db->rottdb);
ctdb_db->rottdb = NULL;
}
+ while (ctdb_db->revokechild_active != NULL) {
+ talloc_free(ctdb_db->revokechild_active);
+ ctdb_db->revokechild_active = NULL;
+ }
}
ctdb_lock_all_databases_unmark(ctdb, ctdb_db->priority);