From d1506ba5fa828fafa27c691f4e8733e77f03e0cb Mon Sep 17 00:00:00 2001 From: Ken Hopkins Date: Sat, 30 May 2020 14:15:51 -0400 Subject: [PATCH] Upgrade Mybatis-Migration support to 3.3.7 to work around an error introduced by https://github.com/mybatis/migrations/commit/a5d8a725befc54483a93fba14a82f99b1a176122#diff-2c0b0afa4090a13167224923f2536046. Also by checking if the script file exists before creating a MigrationReader, code now handles case when onabort.sql isn't found. --- pom.xml | 2 +- .../mybatis/migrations/SpringMigrationLoader.java | 8 ++++---- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/pom.xml b/pom.xml index f0ac492..3978a25 100644 --- a/pom.xml +++ b/pom.xml @@ -21,7 +21,7 @@ UTF-8 2.1.0.RELEASE - 3.3.1 + 3.3.7 1.69 diff --git a/src/main/java/de/bessonov/mybatis/migrations/SpringMigrationLoader.java b/src/main/java/de/bessonov/mybatis/migrations/SpringMigrationLoader.java index c258fcc..7bc7288 100644 --- a/src/main/java/de/bessonov/mybatis/migrations/SpringMigrationLoader.java +++ b/src/main/java/de/bessonov/mybatis/migrations/SpringMigrationLoader.java @@ -1,7 +1,6 @@ package de.bessonov.mybatis.migrations; import java.io.IOException; -import java.io.InputStream; import java.io.Reader; import java.math.BigDecimal; import java.util.Collection; @@ -9,7 +8,6 @@ import java.util.Properties; import java.util.TreeSet; import java.util.stream.Collectors; - import org.apache.ibatis.migration.Change; import org.apache.ibatis.migration.MigrationException; import org.apache.ibatis.migration.MigrationLoader; @@ -111,9 +109,11 @@ protected Change parseChangeFromFilename(String filename) { protected Reader getReader(String fileName, boolean undo) { try { - try (InputStream file = getResource(fileName).getURL().openStream()) { - return new MigrationReader(file, charset, undo, properties); + Resource scriptResource = getResource(fileName); + if (scriptResource.exists()) { + return new MigrationReader(scriptResource.getInputStream(), charset, undo, properties); } + return null; } catch (IOException e) { throw new MigrationException("Error reading " + fileName, e); }