From: Ray Lee Date: Mon, 30 Mar 2020 16:16:50 +0000 (-0400) Subject: DRYD-835: Stop on error when running upgrade scripts. X-Git-Url: https://git.aero2k.de/?a=commitdiff_plain;h=e7ffbdcc5c7dc0e7ded89689548ce355dca53724;p=tmp%2Fjakarta-migration.git DRYD-835: Stop on error when running upgrade scripts. --- diff --git a/services/common/src/main/java/org/collectionspace/services/common/ServiceMain.java b/services/common/src/main/java/org/collectionspace/services/common/ServiceMain.java index 27b3aab8b..77776f2a8 100644 --- a/services/common/src/main/java/org/collectionspace/services/common/ServiceMain.java +++ b/services/common/src/main/java/org/collectionspace/services/common/ServiceMain.java @@ -505,6 +505,9 @@ public class ServiceMain { conn.commit(); } catch (Exception e) { + logger.error(String.format("Could not upgrade %s repository", repositoryName)); + logger.error(e.toString()); + if (conn != null) { conn.rollback(); } diff --git a/services/common/src/main/java/org/collectionspace/services/common/storage/JDBCTools.java b/services/common/src/main/java/org/collectionspace/services/common/storage/JDBCTools.java index ba715cf52..a6bbb646b 100644 --- a/services/common/src/main/java/org/collectionspace/services/common/storage/JDBCTools.java +++ b/services/common/src/main/java/org/collectionspace/services/common/storage/JDBCTools.java @@ -17,15 +17,11 @@ */ package org.collectionspace.services.common.storage; -import org.collectionspace.services.common.ServiceMain; -import org.collectionspace.services.common.api.JEEServerDeployment; import org.collectionspace.services.common.api.Tools; import org.collectionspace.services.common.config.ConfigUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; -import java_cup.version; - import javax.naming.Context; import javax.naming.InitialContext; import javax.naming.NamingException; @@ -45,14 +41,8 @@ import java.sql.ResultSetMetaData; import java.sql.SQLException; import java.sql.Statement; import java.util.ArrayList; -import java.util.Arrays; -import java.util.Comparator; import java.util.HashMap; -import java.util.LinkedHashMap; import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.regex.Pattern; import javax.sql.rowset.CachedRowSet; import javax.sql.rowset.RowSetFactory; @@ -833,8 +823,10 @@ public class JDBCTools { public static void runScript(Connection conn, File scriptFile) throws FileNotFoundException { ScriptRunner scriptRunner = new ScriptRunner(conn); - Reader reader = new BufferedReader(new FileReader(scriptFile)); - scriptRunner.runScript(reader); + scriptRunner.setAutoCommit(false); + scriptRunner.setStopOnError(true); + + scriptRunner.runScript(new BufferedReader(new FileReader(scriptFile))); } }