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 6464c1aa65..5ecfac0e74 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 @@ -205,39 +205,17 @@ public String createInitialLoadSqlFor(Node node, TriggerRouter trigger, Table ta public String createPurgeSqlFor(Node node, TriggerRouter triggerRouter, TriggerHistory triggerHistory) { - String sql=null; - + String sql=null; if (StringUtils.isEmpty(triggerRouter.getInitialLoadDeleteStmt())) { - sql = String.format( + sql = String.format( parameterService.getString(ParameterConstants.INITIAL_LOAD_DELETE_FIRST_SQL), - formatTableName(triggerRouter.qualifiedTargetTableName(triggerHistory))); + triggerRouter.qualifiedTargetTableName(triggerHistory)); } else { sql = triggerRouter.getInitialLoadDeleteStmt(); - sql = FormatUtils.replace("groupId", node.getNodeGroupId(), sql); - sql = FormatUtils.replace("externalId", node.getExternalId(), sql); - sql = FormatUtils.replace("nodeId", node.getNodeId(), sql); - sql = FormatUtils.replace("schemaName", triggerRouter.getTargetSchema(platform.getDefaultSchema()),sql); - sql = FormatUtils.replace("catalogName", triggerRouter.getTargetCatalog(platform.getDefaultCatalog()),sql); - sql = FormatUtils.replace("tableName", - formatTableName(triggerRouter.qualifiedTargetTableName(triggerHistory)), - sql); } return sql; } - private String formatTableName(String tableName) { - String quote = platform.getDdlBuilder().isDelimitedIdentifierModeOn() ? platform - .getDatabaseInfo().getDelimiterToken() : ""; - Table table = platform.getTableFromCache(tableName, false); - if (table != null) { - return String.format("%s%s%s", quote, table.getName(), quote); - } else { - throw new RuntimeException(String.format("Could not find %s to trunate", - tableName)); - } - } - - public String createCsvDataSql(Trigger trigger, TriggerHistory triggerHistory, Channel channel, String whereClause) { return triggerTemplate.createCsvDataSql( @@ -708,6 +686,8 @@ public int getRouterDataPeekAheadCount() { } public void truncateTable(String tableName) { + String quote = platform.getDdlBuilder().isDelimitedIdentifierModeOn() ? platform + .getDatabaseInfo().getDelimiterToken() : ""; boolean success = false; int tryCount = 5; while (!success && tryCount > 0) { @@ -715,7 +695,7 @@ public void truncateTable(String tableName) { Table table = platform.getTableFromCache(tableName, false); if (table != null) { platform.getSqlTemplate().update( - String.format("truncate table %s", formatTableName(table.getName()))); + String.format("truncate table %s%s%s", quote, table.getName(), quote)); success = true; } else { throw new RuntimeException(String.format("Could not find %s to trunate",