diff options
author | Matthieu Patou <mat@matws.net> | 2012-05-30 10:43:27 -0700 |
---|---|---|
committer | Matthieu Patou <mat@matws.net> | 2012-06-22 23:22:04 -0700 |
commit | 6f3a8b41f5b43c35263a401b2bddbe4e49812b85 (patch) | |
tree | bd0da53909e07e60f2592c028cbacb28029b1320 /source4/dsdb/samdb/ldb_modules/partition.c | |
parent | 9f1213d954c72a46ac1f30e936e4004b1ed9ff76 (diff) | |
download | samba-6f3a8b41f5b43c35263a401b2bddbe4e49812b85.tar.gz samba-6f3a8b41f5b43c35263a401b2bddbe4e49812b85.tar.bz2 samba-6f3a8b41f5b43c35263a401b2bddbe4e49812b85.zip |
s4-dsdb: Add/Update SCHEMA_SEQ_NUM key in the metadata.tdb after schemaUpdateNow
The idea is to signal to other process accessing the database that the
schema was forced to be reloaded and so they should reload as well.
Diffstat (limited to 'source4/dsdb/samdb/ldb_modules/partition.c')
-rw-r--r-- | source4/dsdb/samdb/ldb_modules/partition.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/source4/dsdb/samdb/ldb_modules/partition.c b/source4/dsdb/samdb/ldb_modules/partition.c index e4659a7f43..d4f020fc5e 100644 --- a/source4/dsdb/samdb/ldb_modules/partition.c +++ b/source4/dsdb/samdb/ldb_modules/partition.c @@ -1215,6 +1215,13 @@ static int partition_extended(struct ldb_module *module, struct ldb_request *req return ldb_next_request(module, req); } + if (strcmp(req->op.extended.oid, DSDB_EXTENDED_SCHEMA_UPDATE_NOW_OID) == 0) { + /* Update the metadata.tdb to increment the schema version if needed*/ + DEBUG(10, ("Incrementing the sequence_number after schema_update_now\n")); + ret = partition_metadata_inc_schema_sequence(module); + return ldb_module_done(req, NULL, NULL, ret); + } + /* see if we are still up-to-date */ ret = partition_reload_if_required(module, data, req); if (ret != LDB_SUCCESS) { |