From cefa36bc05924e4c31c13b098d703a37968b6034 Mon Sep 17 00:00:00 2001 From: chenson42 Date: Mon, 5 Nov 2012 20:24:55 +0000 Subject: [PATCH] 0000872: Run uninstall with unit tests --- .../interbase/InterbaseSymmetricDialect.java | 2 +- .../PostgreSqlSymmetricDialect.java | 22 +++++++++---------- .../db/AbstractSymmetricDialect.java | 3 ++- 3 files changed, 14 insertions(+), 13 deletions(-) diff --git a/symmetric-client/src/main/java/org/jumpmind/symmetric/db/interbase/InterbaseSymmetricDialect.java b/symmetric-client/src/main/java/org/jumpmind/symmetric/db/interbase/InterbaseSymmetricDialect.java index c6003aa248..342d97b80b 100644 --- a/symmetric-client/src/main/java/org/jumpmind/symmetric/db/interbase/InterbaseSymmetricDialect.java +++ b/symmetric-client/src/main/java/org/jumpmind/symmetric/db/interbase/InterbaseSymmetricDialect.java @@ -50,7 +50,7 @@ public class InterbaseSymmetricDialect extends AbstractSymmetricDialect implemen static final String SQL_FUNCTION_INSTALLED = "select count(*) from rdb$functions where rdb$function_name = upper('$(functionName)')" ; - static final String SQL_DROP_FUNCTION = "drop function $(functionName)"; + static final String SQL_DROP_FUNCTION = "DROP EXTERNAL FUNCTION $(functionName)"; public InterbaseSymmetricDialect(IParameterService parameterService, IDatabasePlatform platform) { super(parameterService, platform); diff --git a/symmetric-client/src/main/java/org/jumpmind/symmetric/db/postgresql/PostgreSqlSymmetricDialect.java b/symmetric-client/src/main/java/org/jumpmind/symmetric/db/postgresql/PostgreSqlSymmetricDialect.java index b5d973a164..7a8c81a1c1 100644 --- a/symmetric-client/src/main/java/org/jumpmind/symmetric/db/postgresql/PostgreSqlSymmetricDialect.java +++ b/symmetric-client/src/main/java/org/jumpmind/symmetric/db/postgresql/PostgreSqlSymmetricDialect.java @@ -42,7 +42,7 @@ public class PostgreSqlSymmetricDialect extends AbstractSymmetricDialect impleme static final String SYNC_NODE_DISABLED_VARIABLE = "symmetric.node_disabled"; - static final String SQL_DROP_FUNCTION = "drop function $(defaultSchema)$(functionName)"; + static final String SQL_DROP_FUNCTION = "drop function $(functionName)"; static final String SQL_FUNCTION_INSTALLED = " select count(*) from information_schema.routines " + @@ -83,7 +83,7 @@ protected void createRequiredDatabaseObjects() { String triggersDisabled = this.parameterService.getTablePrefix() + "_" + "triggers_disabled"; if (!installed(SQL_FUNCTION_INSTALLED, triggersDisabled)) { - String sql = "CREATE or REPLACE FUNCTION $(defaultSchema)$(functionName)() RETURNS INTEGER AS $$ " + + String sql = "CREATE or REPLACE FUNCTION $(functionName)() RETURNS INTEGER AS $$ " + " DECLARE " + " triggerDisabled INTEGER; " + " BEGIN " + @@ -96,9 +96,9 @@ protected void createRequiredDatabaseObjects() { install(sql, triggersDisabled); } - String nodeDisabled = this.parameterService.getTablePrefix() + "_" + "escape"; + String nodeDisabled = this.parameterService.getTablePrefix() + "_" + "node_disabled"; if (!installed(SQL_FUNCTION_INSTALLED, nodeDisabled)) { - String sql = "CREATE or REPLACE FUNCTION $(defaultSchema)$(functionName)() RETURNS VARCHAR AS $$ " + + String sql = "CREATE or REPLACE FUNCTION $(functionName)() RETURNS VARCHAR AS $$ " + " DECLARE " + " nodeId VARCHAR(50); " + " BEGIN " + @@ -111,9 +111,9 @@ protected void createRequiredDatabaseObjects() { install(sql, nodeDisabled); } - String largeObjects = this.parameterService.getTablePrefix() + "_" + "escape"; + String largeObjects = this.parameterService.getTablePrefix() + "_" + "largeobject"; if (!installed(SQL_FUNCTION_INSTALLED, largeObjects)) { - String sql = "CREATE OR REPLACE FUNCTION $(defaultSchema)$(functionName)(objectId oid) RETURNS text AS $$ " + + String sql = "CREATE OR REPLACE FUNCTION $(functionName)(objectId oid) RETURNS text AS $$ " + " DECLARE " + " encodedBlob text; " + " encodedBlobPage text; " + @@ -137,17 +137,17 @@ protected void createRequiredDatabaseObjects() { protected void dropRequiredDatabaseObjects() { String triggersDisabled = this.parameterService.getTablePrefix() + "_" + "triggers_disabled"; if (installed(SQL_FUNCTION_INSTALLED, triggersDisabled)) { - uninstall(SQL_DROP_FUNCTION, triggersDisabled); + uninstall(SQL_DROP_FUNCTION+ "()", triggersDisabled); } - String nodeDisabled = this.parameterService.getTablePrefix() + "_" + "escape"; + String nodeDisabled = this.parameterService.getTablePrefix() + "_" + "node_disabled"; if (installed(SQL_FUNCTION_INSTALLED, nodeDisabled)) { - uninstall(SQL_DROP_FUNCTION, nodeDisabled); + uninstall(SQL_DROP_FUNCTION + "()", nodeDisabled); } - String largeObjects = this.parameterService.getTablePrefix() + "_" + "escape"; + String largeObjects = this.parameterService.getTablePrefix() + "_" + "largeobject"; if (installed(SQL_FUNCTION_INSTALLED, largeObjects)) { - uninstall(SQL_DROP_FUNCTION, largeObjects); + uninstall(SQL_DROP_FUNCTION + "(objectId oid)", largeObjects); } } 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 d18147499a..78dea7b08b 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 @@ -147,7 +147,8 @@ protected void install(String sql, String objectName) { } protected void uninstall(String sql, String objectName) { - platform.getSqlTemplate().update(replaceTokens(sql, objectName)); + sql = replaceTokens(sql, objectName); + platform.getSqlTemplate().update(sql); log.info("Just uninstalled {}", objectName); }