From 6b57e89f9668cfa2e8b01e93987cc2b73a13f8b9 Mon Sep 17 00:00:00 2001 From: Eric Long Date: Tue, 17 Mar 2020 09:23:39 -0400 Subject: [PATCH] 0004318: MySQL upgrade gets sym_transaction_id_pre_5_7_6 does not exist --- .../jumpmind/symmetric/db/db2/Db2SymmetricDialect.java | 5 ++--- .../symmetric/db/oracle/OracleSymmetricDialect.java | 8 +++++++- .../jumpmind/symmetric/db/AbstractSymmetricDialect.java | 2 +- 3 files changed, 10 insertions(+), 5 deletions(-) diff --git a/symmetric-client/src/main/java/org/jumpmind/symmetric/db/db2/Db2SymmetricDialect.java b/symmetric-client/src/main/java/org/jumpmind/symmetric/db/db2/Db2SymmetricDialect.java index 5339fe5688..6eb7815f3b 100644 --- a/symmetric-client/src/main/java/org/jumpmind/symmetric/db/db2/Db2SymmetricDialect.java +++ b/symmetric-client/src/main/java/org/jumpmind/symmetric/db/db2/Db2SymmetricDialect.java @@ -87,15 +87,14 @@ protected String getSystemSchemaName() { @Override public void createRequiredDatabaseObjects() { - String sql = "select " + getSourceNodeExpression() + " from " + parameterService.getTablePrefix() + "_node_identity"; + String sql = "select " + getSourceNodeExpression() + " from sysibm.sysdummy1"; try { platform.getSqlTemplate().query(sql); } catch (Exception e) { log.debug("Failed checking for variable (usually means it doesn't exist yet) '" + sql + "'", e); platform.getSqlTemplate().update("create variable " + getSourceNodeExpression() + " varchar(50)"); } - sql = "select " + parameterService.getTablePrefix() + VAR_TRIGGER_DISABLED + " from " + parameterService.getTablePrefix() - + "_node_identity"; + sql = "select " + parameterService.getTablePrefix() + VAR_TRIGGER_DISABLED + " from sysibm.sysdummy1"; try { platform.getSqlTemplate().query(sql); } catch (Exception e) { diff --git a/symmetric-client/src/main/java/org/jumpmind/symmetric/db/oracle/OracleSymmetricDialect.java b/symmetric-client/src/main/java/org/jumpmind/symmetric/db/oracle/OracleSymmetricDialect.java index 8dbf2c5210..b31174d83a 100644 --- a/symmetric-client/src/main/java/org/jumpmind/symmetric/db/oracle/OracleSymmetricDialect.java +++ b/symmetric-client/src/main/java/org/jumpmind/symmetric/db/oracle/OracleSymmetricDialect.java @@ -213,6 +213,11 @@ public void createRequiredDatabaseObjects() { + " END $(functionName); \r\n"; install(sql, wkt2geom); } + } + + @Override + public boolean createOrAlterTablesIfNecessary(String... tableNames) { + boolean isAltered = super.createOrAlterTablesIfNecessary(tableNames); boolean isNoOrder = parameterService.is(ParameterConstants.DBDIALECT_ORACLE_SEQUENCE_NOORDER, false); String seqName = getSequenceName(SequenceIdentifier.DATA).toUpperCase(); @@ -228,8 +233,9 @@ public void createRequiredDatabaseObjects() { log.info("DDL applied: " + sql); platform.getSqlTemplate().update(sql); } + return isAltered; } - + @Override public void dropRequiredDatabaseObjects() { String blobToClob = this.parameterService.getTablePrefix() + "_" + "blob2clob"; diff --git a/symmetric-core/src/main/java/org/jumpmind/symmetric/db/AbstractSymmetricDialect.java b/symmetric-core/src/main/java/org/jumpmind/symmetric/db/AbstractSymmetricDialect.java index 8bb721b929..6d915cd6b8 100644 --- a/symmetric-core/src/main/java/org/jumpmind/symmetric/db/AbstractSymmetricDialect.java +++ b/symmetric-core/src/main/java/org/jumpmind/symmetric/db/AbstractSymmetricDialect.java @@ -157,8 +157,8 @@ public void verifyDatabaseIsCompatible() { } public void initTablesAndDatabaseObjects() { - createOrAlterTablesIfNecessary(); createRequiredDatabaseObjects(); + createOrAlterTablesIfNecessary(); platform.resetCachedTableModel(); }