From 80938a651de23d98c7de819d785908a807990973 Mon Sep 17 00:00:00 2001 From: Brett Meyer Date: Mon, 3 Jun 2013 17:19:38 -0400 Subject: [PATCH] HHH-8275 union-subclass generates bad alter table for unique constraint --- .../org/hibernate/mapping/DenormalizedTable.java | 14 ++++++-------- 1 file changed, 6 insertions(+), 8 deletions(-) diff --git a/hibernate-core/src/main/java/org/hibernate/mapping/DenormalizedTable.java b/hibernate-core/src/main/java/org/hibernate/mapping/DenormalizedTable.java index b5af82a86dc7..b02805b1e634 100644 --- a/hibernate-core/src/main/java/org/hibernate/mapping/DenormalizedTable.java +++ b/hibernate-core/src/main/java/org/hibernate/mapping/DenormalizedTable.java @@ -87,14 +87,12 @@ public PrimaryKey getPrimaryKey() { @Override public Iterator getUniqueKeyIterator() { - //wierd implementation because of hacky behavior - //of Table.sqlCreateString() which modifies the - //list of unique keys by side-effect on some - //dialects - Map uks = new HashMap(); - uks.putAll( getUniqueKeys() ); - uks.putAll( includedTable.getUniqueKeys() ); - return uks.values().iterator(); + Iterator iter = includedTable.getUniqueKeyIterator(); + while ( iter.hasNext() ) { + UniqueKey uk = (UniqueKey) iter.next(); + createUniqueKey( uk.getColumns() ); + } + return getUniqueKeys().values().iterator(); } @Override