summaryrefslogtreecommitdiffstats
path: root/ctdb/server/ctdb_vacuum.c
diff options
context:
space:
mode:
authorMichael Adam <obnox@samba.org>2014-02-20 00:58:17 +0100
committerAmitay Isaacs <amitay@gmail.com>2014-03-06 11:31:16 +1100
commit5b81848e50b43b7ab7889f5217e05ca42e452c8f (patch)
tree6725abbf8db49de9a53ba847c14d7daafb2a1ab2 /ctdb/server/ctdb_vacuum.c
parent551e9d791c146473b45f8a9fb1574e0ad7cca6b2 (diff)
downloadsamba-5b81848e50b43b7ab7889f5217e05ca42e452c8f.tar.gz
samba-5b81848e50b43b7ab7889f5217e05ca42e452c8f.tar.xz
samba-5b81848e50b43b7ab7889f5217e05ca42e452c8f.zip
ctdb-vacuum: fix possible cause for delelete_list processing counts left records > 0
We need to have left records == 0 at the end of the delete list processing. Signed-off-by: Michael Adam <obnox@samba.org> Reviewed-by: Amitay Isaacs <amitay@gmail.com>
Diffstat (limited to 'ctdb/server/ctdb_vacuum.c')
-rw-r--r--ctdb/server/ctdb_vacuum.c16
1 files changed, 16 insertions, 0 deletions
diff --git a/ctdb/server/ctdb_vacuum.c b/ctdb/server/ctdb_vacuum.c
index 56bfe96edca..b5424dccf03 100644
--- a/ctdb/server/ctdb_vacuum.c
+++ b/ctdb/server/ctdb_vacuum.c
@@ -976,6 +976,14 @@ static void ctdb_process_delete_list(struct ctdb_db_context *ctdb_db,
talloc_free(dd);
vdata->count.delete_list.remote_error++;
vdata->count.delete_list.left--;
+ } else {
+ DEBUG(DEBUG_ERR, (__location__ " Failed to "
+ "find record with hash 0x%08x coming "
+ "back from RECEIVE_RECORDS "
+ "control in delete list.\n",
+ ctdb_hash(&reckey)));
+ vdata->count.delete_list.local_error++;
+ vdata->count.delete_list.left--;
}
rec = (struct ctdb_rec_data *)(rec->length + (uint8_t *)rec);
@@ -1075,6 +1083,14 @@ static void ctdb_process_delete_list(struct ctdb_db_context *ctdb_db,
talloc_free(dd);
vdata->count.delete_list.remote_error++;
vdata->count.delete_list.left--;
+ } else {
+ DEBUG(DEBUG_ERR, (__location__ " Failed to "
+ "find record with hash 0x%08x coming "
+ "back from TRY_DELETE_RECORDS "
+ "control in delete list.\n",
+ ctdb_hash(&reckey)));
+ vdata->count.delete_list.local_error++;
+ vdata->count.delete_list.left--;
}
rec = (struct ctdb_rec_data *)(rec->length + (uint8_t *)rec);