From: Ray Lee Date: Mon, 23 Mar 2020 00:59:54 +0000 (-0400) Subject: DRYD-846: Error when attempting to merge an authority item into itself. X-Git-Url: https://git.aero2k.de/?a=commitdiff_plain;h=7d8803c352b915d7a03ada3f9e5be6d5ca829e83;p=tmp%2Fjakarta-migration.git DRYD-846: Error when attempting to merge an authority item into itself. --- diff --git a/services/batch/service/src/main/java/org/collectionspace/services/batch/nuxeo/MergeAuthorityItemsBatchJob.java b/services/batch/service/src/main/java/org/collectionspace/services/batch/nuxeo/MergeAuthorityItemsBatchJob.java index 9778e13b7..b0c01bbde 100644 --- a/services/batch/service/src/main/java/org/collectionspace/services/batch/nuxeo/MergeAuthorityItemsBatchJob.java +++ b/services/batch/service/src/main/java/org/collectionspace/services/batch/nuxeo/MergeAuthorityItemsBatchJob.java @@ -142,6 +142,14 @@ public class MergeAuthorityItemsBatchJob extends AbstractBatchJob { ? findAuthorityItemByRefName(serviceName, target) : findAuthorityItemByCsid(serviceName, target); + String targetItemCsid = getCsid(targetItemPayload); + + for (String sourceCsid : sourceCsids) { + if (sourceCsid.equals(targetItemCsid)) { + throw new DocumentException("Can't merge a record into itself."); + } + } + List sourceItemPayloads = new ArrayList(); for (String sourceCsid : sourceCsids) {