From: Amitay Isaacs Date: Mon, 30 Sep 2019 06:34:35 +0000 (+1000) Subject: ctdb-vacuum: Process all records not deleted on a remote node X-Git-Tag: samba-4.9.14~5 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=6024163e177fd36fcd4270d439553e4410b1ae29;p=thirdparty%2Fsamba.git ctdb-vacuum: Process all records not deleted on a remote node This currently skips the last record. BUG: https://bugzilla.samba.org/show_bug.cgi?id=14147 RN: Avoid potential data loss during recovery after vacuuming error Signed-off-by: Amitay Isaacs Reviewed-by: Martin Schwenke (cherry picked from commit 33f1c9d9654fbdcb99c23f9d23c4bbe2cc596b98) --- diff --git a/ctdb/server/ctdb_vacuum.c b/ctdb/server/ctdb_vacuum.c index 2194b7f4da7..fa43eaa8e67 100644 --- a/ctdb/server/ctdb_vacuum.c +++ b/ctdb/server/ctdb_vacuum.c @@ -814,7 +814,7 @@ static void ctdb_process_delete_list(struct ctdb_db_context *ctdb_db, */ records = (struct ctdb_marshall_buffer *)outdata.dptr; rec = (struct ctdb_rec_data_old *)&records->data[0]; - while (records->count-- > 1) { + while (records->count-- > 0) { TDB_DATA reckey, recdata; struct ctdb_ltdb_header *rechdr; struct delete_record_data *dd;