Repository: oozie Updated Branches: refs/heads/master d77934462 -> 83dec8b0e
OOZIE-1831 Oozie upgrade fails if workflow jobs are in running or suspended state (satish.mittal via rohini) Project: http://git-wip-us.apache.org/repos/asf/oozie/repo Commit: http://git-wip-us.apache.org/repos/asf/oozie/commit/83dec8b0 Tree: http://git-wip-us.apache.org/repos/asf/oozie/tree/83dec8b0 Diff: http://git-wip-us.apache.org/repos/asf/oozie/diff/83dec8b0 Branch: refs/heads/master Commit: 83dec8b0ebe37c84e2aabce35b60ed865b51b028 Parents: d779344 Author: Rohini Palaniswamy <[email protected]> Authored: Tue May 13 10:03:01 2014 -0700 Committer: Rohini Palaniswamy <[email protected]> Committed: Tue May 13 10:03:01 2014 -0700 ---------------------------------------------------------------------- release-log.txt | 5 +-- .../java/org/apache/oozie/tools/OozieDBCLI.java | 38 ++++++++++++++++++-- 2 files changed, 39 insertions(+), 4 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/oozie/blob/83dec8b0/release-log.txt ---------------------------------------------------------------------- diff --git a/release-log.txt b/release-log.txt index 1ef64b7..c35ca7d 100644 --- a/release-log.txt +++ b/release-log.txt @@ -1,8 +1,9 @@ -- Oozie 4.1.0 release (trunk - unreleased) +OOZIE-1831 Oozie upgrade fails if workflow jobs are in running or suspended state (satish.mittal via rohini) OOZIE-1690 TestShellActionExecutor#testEnvVar failed for Windows (omaliuvanchuk via rkanter) -OOZIE-1243 libtools dir should not include hadoop JARs (sathish.mittal via rohini) -OOZIE-1806 Java Action type jobs are failing with hadoop-0.20.0 and earlier versions on oozie trunk (sathish.mittal via rohini) +OOZIE-1243 libtools dir should not include hadoop JARs (satish.mittal via rohini) +OOZIE-1806 Java Action type jobs are failing with hadoop-0.20.0 and earlier versions on oozie trunk (satish.mittal via rohini) OOZIE-1823 OozieSharelibCLI shouldn't load ext services (rkanter) OOZIE-1762 Sharelib with oozie.action.ship.launcher.jar=true should copy oozie-hadoop-utils.jar (puru via mona) OOZIE-1709 CoordELFunctions.getCurrentInstance() is expensive (shwethags via rohini) http://git-wip-us.apache.org/repos/asf/oozie/blob/83dec8b0/tools/src/main/java/org/apache/oozie/tools/OozieDBCLI.java ---------------------------------------------------------------------- diff --git a/tools/src/main/java/org/apache/oozie/tools/OozieDBCLI.java b/tools/src/main/java/org/apache/oozie/tools/OozieDBCLI.java index a116984..0733e6f 100644 --- a/tools/src/main/java/org/apache/oozie/tools/OozieDBCLI.java +++ b/tools/src/main/java/org/apache/oozie/tools/OozieDBCLI.java @@ -194,7 +194,6 @@ public class OozieDBCLI { private void upgradeDB(String sqlFile, boolean run) throws Exception { validateConnection(); validateDBSchema(true); - verifyDBState(); String version = BuildInfo.getBuildInfo().getProperty(BuildInfo.BUILD_VERSION); if (!verifyOozieSysTable(false, false)) { // If OOZIE_SYS table doesn't @@ -231,7 +230,7 @@ public class OozieDBCLI { private void upgradeDBTo40(String sqlFile, boolean run) throws Exception { upgradeOozieDBVersion(sqlFile, run, DB_VERSION_FOR_4_0); - postUpgradeTasks(sqlFile, run, false); + postUpgradeTasksFor40(sqlFile, run); ddlTweaks(sqlFile, run); } @@ -405,6 +404,41 @@ public class OozieDBCLI { } } + private void postUpgradeTasksFor40(String sqlFile, boolean run) throws Exception { + PrintWriter writer = new PrintWriter(new FileWriter(sqlFile, true)); + writer.println(); + Connection conn = (run) ? createConnection() : null; + try { + if (!getDBVendor().equals("derby")) { + String updateMissingDependenciesQuery; + if (getDBVendor().equals("sqlserver")){ + updateMissingDependenciesQuery = UPDATE_DELIMITER_VER_TWO_MSSQL; + } else { + updateMissingDependenciesQuery = UPDATE_DELIMITER_VER_TWO; + } + + writer.println(updateMissingDependenciesQuery + ";"); + System.out.println("Post-upgrade MISSING_DEPENDENCIES column"); + if (run) { + Statement st = conn.createStatement(); + st.executeUpdate(updateMissingDependenciesQuery); + st.close(); + } + } + else { + System.out.println("Post-upgrade MISSING_DEPENDENCIES column in Derby"); + replaceForDerby(";", "!!"); + } + System.out.println("DONE"); + writer.close(); + } + finally { + if (run) { + conn.close(); + } + } + } + private static final String COORD_ACTION_ID_DEPS = "SELECT ID, MISSING_DEPENDENCIES FROM COORD_ACTIONS"; private void replaceForDerby(String oldStr, String newStr) throws Exception {
