s3:registry: update the seqnum in the subkey cache at the end of regval_store_keys
authorMichael Adam <obnox@samba.org>
Wed, 11 Apr 2012 14:02:44 +0000 (16:02 +0200)
committerAndreas Schneider <asn@samba.org>
Wed, 25 Apr 2012 12:31:11 +0000 (14:31 +0200)
The purpose is to prevent next reads from going to disk.

Note that this will currently only be effective with local tdbs, not
with ctdb: For tdb, store and delete bump the seqnum while transaction
commit does not. For ctdb, transaction commit bumps the seqnum, while
store and delete don't... This needs fixing (in ctdb).

Signed-off-by: Andreas Schneider <asn@samba.org>
source3/registry/reg_backend_db.c

index d4f52b7571ab91b7bff6411a5b8ecaea0b032ea0..65355aec2370eff994bc9d9e767bf69877a81c91 100644 (file)
@@ -1260,7 +1260,11 @@ static NTSTATUS regdb_store_keys_action(struct db_context *db,
                W_ERROR_NOT_OK_GOTO_DONE(werr);
        }
 
-       werr = WERR_OK;
+       /*
+        * Update the seqnum in the container to possibly
+        * prevent next read from going to disk
+        */
+       werr = regsubkey_ctr_set_seqnum(store_ctx->ctr, dbwrap_get_seqnum(db));
 
 done:
        talloc_free(mem_ctx);