1
0
mirror of https://github.com/samba-team/samba.git synced 2025-02-26 21:57:41 +03:00

schema_set: Add comment about set schema from ldif in a transaction

This is normally called with a transaction or before access is shared.
The python code and some tests may also cause an issue, but as these are
fixed at runtime, this is only a temporary issue that resolves itself.

Signed-off-by: Garming Sam <garming@catalyst.net.nz>
Reviewed-by: Andrew Bartlett <abartlet@samba.org>
This commit is contained in:
Garming Sam 2017-11-22 12:46:31 +13:00 committed by Andrew Bartlett
parent 17f1c6f9f4
commit 8eb95bc1d1

View File

@ -892,6 +892,9 @@ WERROR dsdb_schema_set_el_from_ldb_msg(struct ldb_context *ldb,
* Rather than read a schema from the LDB itself, read it from an ldif
* file. This allows schema to be loaded and used while adding the
* schema itself to the directory.
*
* Should be called with a transaction (or failing that, have no concurrent
* access while called).
*/
WERROR dsdb_set_schema_from_ldif(struct ldb_context *ldb,
@ -977,6 +980,13 @@ WERROR dsdb_set_schema_from_ldif(struct ldb_context *ldb,
}
}
/*
* TODO We may need a transaction here, otherwise this causes races.
*
* To do so may require an ldb_in_transaction function. In the
* meantime, assume that this is always called with a transaction or in
* isolation.
*/
ret = dsdb_set_schema(ldb, schema, SCHEMA_WRITE);
if (ret != LDB_SUCCESS) {
status = WERR_FOOBAR;