]> git.ipfire.org Git - thirdparty/samba.git/commitdiff
r23169: Merge 535 of Tridge's bzr tree:
authorVolker Lendecke <vlendec@samba.org>
Sun, 27 May 2007 17:12:08 +0000 (17:12 +0000)
committerGerald (Jerry) Carter <jerry@samba.org>
Wed, 10 Oct 2007 17:22:51 +0000 (12:22 -0500)
  store the right data after cleaning lock records. This fixes
  RAW-BENCH-LOCK after a recovery on a cluster
(This used to be commit 3da3086dbf594fbdc4cfabf78f8d3ea1df4dc8ce)

source3/locking/brlock.c

index d8dcc6f642af4f1920e5935e8d44de037aba31bd..8e2f7ce41a6de86432c0b81404f5df3dbfdde4d7 100644 (file)
@@ -1482,8 +1482,11 @@ static int traverse_fn(struct db_record *rec, void *state)
        }
 
        if (orig_num_locks != num_locks) {
-               if (rec->value.dsize) {
-                       rec->store(rec, rec->value, TDB_REPLACE);
+               if (num_locks) {
+                       TDB_DATA data;
+                       data.dptr = (uint8_t *)locks;
+                       data.dsize = num_locks*sizeof(struct lock_struct);
+                       rec->store(rec, data, TDB_REPLACE);
                } else {
                        rec->delete_rec(rec);
                }