1
0
mirror of https://github.com/samba-team/samba.git synced 2025-01-11 05:18:09 +03:00

vacuum: add a comment explaining a race in the vacuum code.

(This used to be ctdb commit 07f1ba54b1617fadd6fe83826dd8e76f37cea071)
This commit is contained in:
Michael Adam 2011-12-20 15:58:34 +01:00
parent c10fc30a38
commit bdf395c2e2

View File

@ -741,6 +741,17 @@ static int ctdb_process_delete_list(struct ctdb_db_context *ctdb_db,
* outdata contains the list of records coming back
* from the node: These are the records that the
* remote node could not delete.
*
* NOTE: There is a problem here:
*
* When a node failed to delete the record, but
* others succeeded, we may have created gaps in the
* history of the record. Hence when a node dies, an
* closed file handle might be resurrected or an open
* file handle might be lost, leading to blocked access
* or data corruption.
*
* TODO: This needs to be fixed!
*/
records = (struct ctdb_marshall_buffer *)outdata.dptr;
rec = (struct ctdb_rec_data *)&records->data[0];