summaryrefslogtreecommitdiffstats
path: root/ldb/tools/ldbedit.c
diff options
context:
space:
mode:
Diffstat (limited to 'ldb/tools/ldbedit.c')
-rw-r--r--ldb/tools/ldbedit.c10
1 files changed, 10 insertions, 0 deletions
diff --git a/ldb/tools/ldbedit.c b/ldb/tools/ldbedit.c
index b2a040cd0..1a684c5c2 100644
--- a/ldb/tools/ldbedit.c
+++ b/ldb/tools/ldbedit.c
@@ -112,6 +112,11 @@ static int merge_edits(struct ldb_context *ldb,
int ret = 0;
int adds=0, modifies=0, deletes=0;
+ if (ldb_transaction_start(ldb) != 0) {
+ fprintf(stderr, "Failed to start transaction: %s\n", ldb_errstring(ldb));
+ return -1;
+ }
+
/* do the adds and modifies */
for (i=0;i<count2;i++) {
msg = msg_find(ldb, msgs1, count1, msgs2[i]->dn);
@@ -150,6 +155,11 @@ static int merge_edits(struct ldb_context *ldb,
}
}
+ if (ldb_transaction_commit(ldb) != 0) {
+ fprintf(stderr, "Failed to commit transaction: %s\n", ldb_errstring(ldb));
+ return -1;
+ }
+
printf("# %d adds %d modifies %d deletes\n", adds, modifies, deletes);
return ret;