diff options
author | Michael Adam <obnox@samba.org> | 2014-02-14 17:58:01 +0100 |
---|---|---|
committer | Amitay Isaacs <amitay@gmail.com> | 2014-03-06 11:31:11 +1100 |
commit | c88fd19714b98769887dbff59d8c1d077cf351d5 (patch) | |
tree | 53f3e4138793c9bfd4677d0488f10c4c350f0471 /ctdb/server | |
parent | 5d5907c7cf09567e73092578917624c8789c7471 (diff) | |
download | samba-c88fd19714b98769887dbff59d8c1d077cf351d5.tar.gz samba-c88fd19714b98769887dbff59d8c1d077cf351d5.tar.xz samba-c88fd19714b98769887dbff59d8c1d077cf351d5.zip |
ctdb-vacuum: add consistency check for counts to ctdb_vacuum_db_fast()
Signed-off-by: Michael Adam <obnox@samba.org>
Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Diffstat (limited to 'ctdb/server')
-rw-r--r-- | ctdb/server/ctdb_vacuum.c | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/ctdb/server/ctdb_vacuum.c b/ctdb/server/ctdb_vacuum.c index a3396f21932..6adfa5870ae 100644 --- a/ctdb/server/ctdb_vacuum.c +++ b/ctdb/server/ctdb_vacuum.c @@ -716,8 +716,23 @@ done: static void ctdb_vacuum_db_fast(struct ctdb_db_context *ctdb_db, struct vacuum_data *vdata) { + uint32_t sum; + trbt_traversearray32(ctdb_db->delete_queue, 1, delete_queue_traverse, vdata); + sum = vdata->fast_deleted + + vdata->fast_skipped + + vdata->fast_error + + vdata->fast_added_to_delete_list + + vdata->fast_added_to_vacuum_fetch_list; + + if (vdata->fast_total != sum) { + DEBUG(DEBUG_ERR, (__location__ " Inconsistency in fast vacuum " + "counts for db[%s]: total[%u] != sum[%u]\n", + ctdb_db->db_name, (unsigned)vdata->fast_total, + (unsigned)sum)); + } + if (vdata->fast_total > 0) { DEBUG(DEBUG_INFO, (__location__ |