From daf5f29d4933c89bb8815e34206c976945683ed3 Mon Sep 17 00:00:00 2001 From: Michael Adam Date: Wed, 11 May 2011 15:58:48 +0200 Subject: s3:registry: recreate the sorted subkeys cache when storing keys This is to avoid turning the next read operation into a write op. --- source3/registry/reg_backend_db.c | 17 ++--------------- 1 file changed, 2 insertions(+), 15 deletions(-) diff --git a/source3/registry/reg_backend_db.c b/source3/registry/reg_backend_db.c index 28439ab914..cd57868efa 100644 --- a/source3/registry/reg_backend_db.c +++ b/source3/registry/reg_backend_db.c @@ -834,22 +834,9 @@ static WERROR regdb_store_keys_internal2(struct db_context *db, W_ERROR_NOT_OK_GOTO_DONE(werr); /* - * Delete a sorted subkey cache for regdb_key_exists, will be - * recreated automatically + * recreate the sorted subkey cache for regdb_key_exists() */ - keyname = talloc_asprintf(ctx, "%s\\%s", REG_SORTED_SUBKEYS_PREFIX, - keyname); - if (keyname == NULL) { - werr = WERR_NOMEM; - goto done; - } - - werr = ntstatus_to_werror(dbwrap_delete_bystring(db, keyname)); - - /* don't treat WERR_NOT_FOUND as an error here */ - if (W_ERROR_EQUAL(werr, WERR_NOT_FOUND)) { - werr = WERR_OK; - } + werr = ntstatus_to_werror(create_sorted_subkeys(keyname)); done: TALLOC_FREE(ctx); -- cgit