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`
This commit is contained in:
Artem Bilan
2017-04-24 12:04:53 -04:00
committed by Gary Russell
parent b869666021
commit cd4964eb7f
12 changed files with 29 additions and 12 deletions

View File

@@ -8,4 +8,5 @@ DROP TABLE INT_MESSAGE_GROUP ;
DROP TABLE INT_GROUP_TO_MESSAGE ;
DROP TABLE INT_LOCK ;
DROP TABLE INT_CHANNEL_MESSAGE ;
DROP SEQUENCE INT_MESSAGE_SEQ ;
DROP SEQUENCE INT_MESSAGE_SEQ ;

View File

@@ -8,3 +8,4 @@ DROP TABLE INT_MESSAGE_GROUP ;
DROP TABLE INT_GROUP_TO_MESSAGE ;
DROP TABLE INT_LOCK ;
DROP TABLE INT_CHANNEL_MESSAGE ;

View File

@@ -8,4 +8,5 @@ DROP TABLE INT_MESSAGE_GROUP IF EXISTS;
DROP TABLE INT_GROUP_TO_MESSAGE IF EXISTS;
DROP TABLE INT_LOCK IF EXISTS;
DROP TABLE INT_CHANNEL_MESSAGE IF EXISTS;
DROP SEQUENCE INT_MESSAGE_SEQ IF EXISTS;
DROP SEQUENCE INT_MESSAGE_SEQ IF EXISTS;

View File

@@ -8,4 +8,5 @@ DROP TABLE INT_MESSAGE_GROUP IF EXISTS;
DROP TABLE INT_GROUP_TO_MESSAGE IF EXISTS;
DROP TABLE INT_LOCK IF EXISTS;
DROP TABLE INT_CHANNEL_MESSAGE IF EXISTS;
DROP SEQUENCE INT_MESSAGE_SEQ IF EXISTS;
DROP SEQUENCE INT_MESSAGE_SEQ IF EXISTS;

View File

@@ -1,10 +1,8 @@
-- Autogenerated: do not edit this file
DROP INDEX IF EXISTS INT_MESSAGE_IX1 ;
DROP INDEX IF EXISTS INT_CHANNEL_MSG_DATE_IDX ;
DROP INDEX IF EXISTS INT_CHANNEL_MSG_PRIORITY_IDX ;
DROP TABLE IF EXISTS INT_MESSAGE ;
DROP TABLE IF EXISTS INT_MESSAGE_GROUP ;
DROP TABLE IF EXISTS INT_GROUP_TO_MESSAGE ;
DROP TABLE IF EXISTS INT_LOCK ;
DROP TABLE IF EXISTS INT_CHANNEL_MESSAGE ;

View File

@@ -8,4 +8,5 @@ DROP TABLE INT_MESSAGE_GROUP ;
DROP TABLE INT_GROUP_TO_MESSAGE ;
DROP TABLE INT_LOCK ;
DROP TABLE INT_CHANNEL_MESSAGE ;
DROP SEQUENCE INT_MESSAGE_SEQ ;
DROP SEQUENCE INT_MESSAGE_SEQ ;

View File

@@ -8,4 +8,5 @@ DROP TABLE INT_MESSAGE_GROUP ;
DROP TABLE INT_GROUP_TO_MESSAGE ;
DROP TABLE INT_LOCK ;
DROP TABLE INT_CHANNEL_MESSAGE ;
DROP SEQUENCE INT_MESSAGE_SEQ ;
DROP SEQUENCE INT_MESSAGE_SEQ ;

View File

@@ -8,4 +8,5 @@ DROP TABLE INT_MESSAGE_GROUP ;
DROP TABLE INT_GROUP_TO_MESSAGE ;
DROP TABLE INT_LOCK ;
DROP TABLE INT_CHANNEL_MESSAGE ;
DROP SEQUENCE INT_MESSAGE_SEQ ;
DROP SEQUENCE INT_MESSAGE_SEQ ;

View File

@@ -8,4 +8,5 @@ DROP TABLE INT_MESSAGE_GROUP ;
DROP TABLE INT_GROUP_TO_MESSAGE ;
DROP TABLE INT_LOCK ;
DROP TABLE INT_CHANNEL_MESSAGE ;
DROP SEQUENCE INT_MESSAGE_SEQ ;
DROP SEQUENCE INT_MESSAGE_SEQ ;

View File

@@ -1,9 +1,18 @@
#if(!${NODROPINDEX})
DROP INDEX $!{IFEXISTSBEFORE} INT_MESSAGE_IX1 $!{IFEXISTS};
#end
#if(!${NODROPINDEX})
DROP INDEX $!{IFEXISTSBEFORE} INT_CHANNEL_MSG_DATE_IDX $!{IFEXISTS};
#end
#if(!${NODROPINDEX})
DROP INDEX $!{IFEXISTSBEFORE} INT_CHANNEL_MSG_PRIORITY_IDX $!{IFEXISTS};
#end
DROP TABLE $!{IFEXISTSBEFORE} INT_MESSAGE $!{IFEXISTS};
DROP TABLE $!{IFEXISTSBEFORE} INT_MESSAGE_GROUP $!{IFEXISTS};
DROP TABLE $!{IFEXISTSBEFORE} INT_GROUP_TO_MESSAGE $!{IFEXISTS};
DROP TABLE $!{IFEXISTSBEFORE} INT_LOCK $!{IFEXISTS};
DROP TABLE $!{IFEXISTSBEFORE} INT_CHANNEL_MESSAGE $!{IFEXISTS};
#if(${INT_MESSAGE_SEQ}) DROP SEQUENCE INT_MESSAGE_SEQ $!{IFEXISTS};#end
#if(${INT_MESSAGE_SEQ})
DROP SEQUENCE INT_MESSAGE_SEQ $!{IFEXISTS};
#end

View File

@@ -12,4 +12,5 @@ TIMESTAMP = DATETIME(6)
VARCHAR = VARCHAR
# for generating drop statements...
SEQUENCE = TABLE
AUTO_INCREMENT = AUTO_INCREMENT UNIQUE
AUTO_INCREMENT = AUTO_INCREMENT UNIQUE
NODROPINDEX = true

View File

@@ -72,6 +72,7 @@ public class DelayerHandlerRescheduleIntegrationTests {
public static void init() {
dataSource = new EmbeddedDatabaseBuilder()
.setType(EmbeddedDatabaseType.H2)
.addScript("classpath:/org/springframework/integration/jdbc/schema-drop-h2.sql")
.addScript("classpath:/org/springframework/integration/jdbc/schema-h2.sql")
.build();
}