diff --git a/src/main/java/com/avaje/ebeaninternal/server/ddl/DdlGenerator.java b/src/main/java/com/avaje/ebeaninternal/server/ddl/DdlGenerator.java index e935872c4..c536a725b 100644 --- a/src/main/java/com/avaje/ebeaninternal/server/ddl/DdlGenerator.java +++ b/src/main/java/com/avaje/ebeaninternal/server/ddl/DdlGenerator.java @@ -234,10 +234,17 @@ public class DdlGenerator implements SpiEbeanPlugin { * Execute the list of statements. */ private void runStatements(boolean expectErrors, List statements, Connection c) { + List noDuplicates = new ArrayList(); - for (int i = 0; i < statements.size(); i++) { - String xOfy = (i + 1) + " of " + statements.size(); - runStatement(expectErrors, xOfy, statements.get(i), c); + for (String statement : statements) { + if (!noDuplicates.contains(statement)) { + noDuplicates.add(statement); + } + } + + for (int i = 0; i < noDuplicates.size(); i++) { + String xOfy = (i + 1) + " of " + noDuplicates.size(); + runStatement(expectErrors, xOfy, noDuplicates.get(i), c); } }