From 67a85ae92e7f4e7fb3d95ddd18a9626c64212c68 Mon Sep 17 00:00:00 2001
From: Yannick Lecaillez <yannick.lecaillez@forgerock.com>
Date: Fri, 16 Sep 2016 08:03:50 +0000
Subject: [PATCH] OPENDJ-3286: import-ldif prints missleading message when fail

---
 opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/OnDiskMergeImporter.java |   11 ++++++++++-
 1 files changed, 10 insertions(+), 1 deletions(-)

diff --git a/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/OnDiskMergeImporter.java b/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/OnDiskMergeImporter.java
index b38f931..0683c9d 100644
--- a/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/OnDiskMergeImporter.java
+++ b/opendj-server-legacy/src/main/java/org/opends/server/backends/pluggable/OnDiskMergeImporter.java
@@ -2345,6 +2345,15 @@
           totalNumberOfEntries++;
         }
       }
+      catch (StorageRuntimeException e)
+      {
+        // DnValidationCursorDecorator is using a StorageRuntimeException to wrap a DirectoryException
+        if (e.getCause() instanceof DirectoryException)
+        {
+          throw (DirectoryException) e.getCause();
+        }
+        throw e;
+      }
       id2count.importPutTotalCount(asImporter(id2CountChunk), Math.max(0, totalNumberOfEntries));
 
       new ChunkCopierTask(reporter, id2CountChunk, id2count.getName(), importer).call();
@@ -2440,7 +2449,7 @@
     {
       if (dn.equals(parentDns.peekLast()))
       {
-        throw new DirectoryException(ENTRY_ALREADY_EXISTS, ERR_ADD_ENTRY_ALREADY_EXISTS.get(getDnAsString()));
+        throw new DirectoryException(ENTRY_ALREADY_EXISTS, ERR_IMPORT_DUPLICATE_ENTRY.get(getDnAsString()));
       }
     }
 

--
Gitblit v1.10.0