From 934c5608472788825289219f19380ed218f8c5a6 Mon Sep 17 00:00:00 2001 From: Mark Reynolds Date: Dec 19 2016 17:39:11 +0000 Subject: Ticket 49071 - Import with duplicate DNs throws unexpected errors Bug Description: When an import fails there are unable to flush error messages. Fix Description: When an import fails close the database files before deleting them. Also fixed a small issue in DSUtil where we did not properly check if an entry was valid. https://fedorahosted.org/389/ticket/49071 Reviewed by: mreynolds(one line commit rule) (cherry picked from commit 64b1ebffe5af118965bcdf3a84d62c0fc3efd196) (cherry picked from commit d2f46f5af86faa9f50b85eea8dea2df563501f28) --- diff --git a/ldap/servers/slapd/back-ldbm/import.c b/ldap/servers/slapd/back-ldbm/import.c index 81c3c15..bf70cf3 100644 --- a/ldap/servers/slapd/back-ldbm/import.c +++ b/ldap/servers/slapd/back-ldbm/import.c @@ -1427,11 +1427,11 @@ error: } } if (0 != ret) { + dblayer_instance_close(job->inst->inst_be); if (!(job->flags & FLAG_DRYRUN)) { /* If not dryrun */ /* if running in the dry run mode, don't touch the db */ dblayer_delete_instance_dir(be); } - dblayer_instance_close(job->inst->inst_be); } else { if (0 != (ret = dblayer_instance_close(job->inst->inst_be)) ) { import_log_notice(job, "Failed to close database");