From e47fbe868162063671a133eb2986fdeba7d12266 Mon Sep 17 00:00:00 2001 From: Alan Davis Date: Sat, 31 Jan 2015 15:26:49 +0000 Subject: [PATCH] Merged HEAD-BUG-FIX (5.1/Cloud) to HEAD (5.1/Cloud) 93965: Merged DEV to HEAD-BUG-FIX 93958: MNT-12770: Test failures on DB2 - Try to recreate property value one more time if DuplicateKeyException occurs. git-svn-id: https://svn.alfresco.com/repos/alfresco-enterprise/alfresco/HEAD/root@95017 c4b6b30b-aa2e-2d43-bbcb-ca4b014f7261 --- .../propval/ibatis/PropertyValueDAOImpl.java | 14 ++++++++++++++ 1 file changed, 14 insertions(+) diff --git a/source/java/org/alfresco/repo/domain/propval/ibatis/PropertyValueDAOImpl.java b/source/java/org/alfresco/repo/domain/propval/ibatis/PropertyValueDAOImpl.java index 2d312f4271..3e1b3b9258 100644 --- a/source/java/org/alfresco/repo/domain/propval/ibatis/PropertyValueDAOImpl.java +++ b/source/java/org/alfresco/repo/domain/propval/ibatis/PropertyValueDAOImpl.java @@ -407,6 +407,20 @@ public class PropertyValueDAOImpl extends AbstractPropertyValueDAOImpl @Override protected PropertyValueEntity createPropertyValue(Serializable value) + { + try + { + return createPropertyValueInternal(value); + } + catch (DuplicateKeyException e ) + { + //In very rare situation, it can fail. Just try one more time. + //See MNT-12770 for details + return createPropertyValueInternal(value); + } + } + + private PropertyValueEntity createPropertyValueInternal(Serializable value) { // Get the actual type ID Class clazz = (value == null ? Object.class : value.getClass());