Skip to content

Commit cd4964e

Browse files
artembilangaryrussell
authored andcommitted
INT-4262: Fix SQL scripts for IF EXISTS clause
JIRA: https://jira.spring.io/browse/INT-4262 Since MySQL doesn't have `IF EXISTS` for `DROP INDEX`. And on the other hand the entire `DROP TABLE` takes care about indexes as well, we don't need the `DROP INDEX` command for mysql.properties * Add `NODROPINDEX` variable to the `mysql.properties` * Tweak `destroy.sql.vpp` to leverage `NODROPINDEX`
1 parent b869666 commit cd4964e

File tree

12 files changed

+29
-12
lines changed

12 files changed

+29
-12
lines changed

spring-integration-jdbc/src/main/resources/org/springframework/integration/jdbc/schema-drop-db2.sql

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,5 @@ DROP TABLE INT_MESSAGE_GROUP ;
88
DROP TABLE INT_GROUP_TO_MESSAGE ;
99
DROP TABLE INT_LOCK ;
1010
DROP TABLE INT_CHANNEL_MESSAGE ;
11-
DROP SEQUENCE INT_MESSAGE_SEQ ;
11+
DROP SEQUENCE INT_MESSAGE_SEQ ;
12+

spring-integration-jdbc/src/main/resources/org/springframework/integration/jdbc/schema-drop-derby.sql

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -8,3 +8,4 @@ DROP TABLE INT_MESSAGE_GROUP ;
88
DROP TABLE INT_GROUP_TO_MESSAGE ;
99
DROP TABLE INT_LOCK ;
1010
DROP TABLE INT_CHANNEL_MESSAGE ;
11+

spring-integration-jdbc/src/main/resources/org/springframework/integration/jdbc/schema-drop-h2.sql

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,5 @@ DROP TABLE INT_MESSAGE_GROUP IF EXISTS;
88
DROP TABLE INT_GROUP_TO_MESSAGE IF EXISTS;
99
DROP TABLE INT_LOCK IF EXISTS;
1010
DROP TABLE INT_CHANNEL_MESSAGE IF EXISTS;
11-
DROP SEQUENCE INT_MESSAGE_SEQ IF EXISTS;
11+
DROP SEQUENCE INT_MESSAGE_SEQ IF EXISTS;
12+

spring-integration-jdbc/src/main/resources/org/springframework/integration/jdbc/schema-drop-hsqldb.sql

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,5 @@ DROP TABLE INT_MESSAGE_GROUP IF EXISTS;
88
DROP TABLE INT_GROUP_TO_MESSAGE IF EXISTS;
99
DROP TABLE INT_LOCK IF EXISTS;
1010
DROP TABLE INT_CHANNEL_MESSAGE IF EXISTS;
11-
DROP SEQUENCE INT_MESSAGE_SEQ IF EXISTS;
11+
DROP SEQUENCE INT_MESSAGE_SEQ IF EXISTS;
12+
Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,10 +1,8 @@
11
-- Autogenerated: do not edit this file
22

3-
DROP INDEX IF EXISTS INT_MESSAGE_IX1 ;
4-
DROP INDEX IF EXISTS INT_CHANNEL_MSG_DATE_IDX ;
5-
DROP INDEX IF EXISTS INT_CHANNEL_MSG_PRIORITY_IDX ;
63
DROP TABLE IF EXISTS INT_MESSAGE ;
74
DROP TABLE IF EXISTS INT_MESSAGE_GROUP ;
85
DROP TABLE IF EXISTS INT_GROUP_TO_MESSAGE ;
96
DROP TABLE IF EXISTS INT_LOCK ;
107
DROP TABLE IF EXISTS INT_CHANNEL_MESSAGE ;
8+

spring-integration-jdbc/src/main/resources/org/springframework/integration/jdbc/schema-drop-oracle.sql

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,5 @@ DROP TABLE INT_MESSAGE_GROUP ;
88
DROP TABLE INT_GROUP_TO_MESSAGE ;
99
DROP TABLE INT_LOCK ;
1010
DROP TABLE INT_CHANNEL_MESSAGE ;
11-
DROP SEQUENCE INT_MESSAGE_SEQ ;
11+
DROP SEQUENCE INT_MESSAGE_SEQ ;
12+

spring-integration-jdbc/src/main/resources/org/springframework/integration/jdbc/schema-drop-postgresql.sql

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,5 @@ DROP TABLE INT_MESSAGE_GROUP ;
88
DROP TABLE INT_GROUP_TO_MESSAGE ;
99
DROP TABLE INT_LOCK ;
1010
DROP TABLE INT_CHANNEL_MESSAGE ;
11-
DROP SEQUENCE INT_MESSAGE_SEQ ;
11+
DROP SEQUENCE INT_MESSAGE_SEQ ;
12+

spring-integration-jdbc/src/main/resources/org/springframework/integration/jdbc/schema-drop-sqlserver.sql

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,5 @@ DROP TABLE INT_MESSAGE_GROUP ;
88
DROP TABLE INT_GROUP_TO_MESSAGE ;
99
DROP TABLE INT_LOCK ;
1010
DROP TABLE INT_CHANNEL_MESSAGE ;
11-
DROP SEQUENCE INT_MESSAGE_SEQ ;
11+
DROP SEQUENCE INT_MESSAGE_SEQ ;
12+

spring-integration-jdbc/src/main/resources/org/springframework/integration/jdbc/schema-drop-sybase.sql

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,5 @@ DROP TABLE INT_MESSAGE_GROUP ;
88
DROP TABLE INT_GROUP_TO_MESSAGE ;
99
DROP TABLE INT_LOCK ;
1010
DROP TABLE INT_CHANNEL_MESSAGE ;
11-
DROP SEQUENCE INT_MESSAGE_SEQ ;
11+
DROP SEQUENCE INT_MESSAGE_SEQ ;
12+
Lines changed: 10 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,18 @@
1+
#if(!${NODROPINDEX})
12
DROP INDEX $!{IFEXISTSBEFORE} INT_MESSAGE_IX1 $!{IFEXISTS};
3+
#end
4+
#if(!${NODROPINDEX})
25
DROP INDEX $!{IFEXISTSBEFORE} INT_CHANNEL_MSG_DATE_IDX $!{IFEXISTS};
6+
#end
7+
#if(!${NODROPINDEX})
38
DROP INDEX $!{IFEXISTSBEFORE} INT_CHANNEL_MSG_PRIORITY_IDX $!{IFEXISTS};
9+
#end
410
DROP TABLE $!{IFEXISTSBEFORE} INT_MESSAGE $!{IFEXISTS};
511
DROP TABLE $!{IFEXISTSBEFORE} INT_MESSAGE_GROUP $!{IFEXISTS};
612
DROP TABLE $!{IFEXISTSBEFORE} INT_GROUP_TO_MESSAGE $!{IFEXISTS};
713
DROP TABLE $!{IFEXISTSBEFORE} INT_LOCK $!{IFEXISTS};
814
DROP TABLE $!{IFEXISTSBEFORE} INT_CHANNEL_MESSAGE $!{IFEXISTS};
9-
#if(${INT_MESSAGE_SEQ}) DROP SEQUENCE INT_MESSAGE_SEQ $!{IFEXISTS};#end
15+
#if(${INT_MESSAGE_SEQ})
16+
DROP SEQUENCE INT_MESSAGE_SEQ $!{IFEXISTS};
17+
#end
18+

spring-integration-jdbc/src/main/sql/mysql.properties

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,4 +12,5 @@ TIMESTAMP = DATETIME(6)
1212
VARCHAR = VARCHAR
1313
# for generating drop statements...
1414
SEQUENCE = TABLE
15-
AUTO_INCREMENT = AUTO_INCREMENT UNIQUE
15+
AUTO_INCREMENT = AUTO_INCREMENT UNIQUE
16+
NODROPINDEX = true

spring-integration-jdbc/src/test/java/org/springframework/integration/jdbc/DelayerHandlerRescheduleIntegrationTests.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@ public class DelayerHandlerRescheduleIntegrationTests {
7272
public static void init() {
7373
dataSource = new EmbeddedDatabaseBuilder()
7474
.setType(EmbeddedDatabaseType.H2)
75+
.addScript("classpath:/org/springframework/integration/jdbc/schema-drop-h2.sql")
7576
.addScript("classpath:/org/springframework/integration/jdbc/schema-h2.sql")
7677
.build();
7778
}

0 commit comments

Comments
 (0)