Remove SQL scripts generation
We don't change JDBC scripts too often and even if we do that, it's not so hard to copy/paste the script throughout all the supported platforms instead of rely on the pretty old VPP tool and suffer from performance degradation during regular day-to-day development. Plus there is some bug in the VPP when it generates a script for the Derby, so we end up with erroneous braces in the sentence: ``` MESSAGE_SEQUENCE BIGINT NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1), ``` I have to remove them manually each time I switch between Gradle versions
This commit is contained in:
committed by
Gary Russell
parent
0c1423e78a
commit
f970bf0332
1
spring-integration-jdbc/.gitignore
vendored
1
spring-integration-jdbc/.gitignore
vendored
@@ -1 +0,0 @@
|
||||
src/test/java/org/springframework/integration/jdbc/store/channel/DataSource-oracle-context-*
|
||||
@@ -1,49 +0,0 @@
|
||||
//apply plugin: 'java'
|
||||
|
||||
/**
|
||||
* Generate schema creation and drop scripts for various databases
|
||||
* supported by the Spring Integration JDBC adapter.
|
||||
*
|
||||
* @author David Syer (original Ant/Maven work)
|
||||
* @author Chris Beams (port to Gradle)
|
||||
*/
|
||||
task generateSql {
|
||||
group = "Build"
|
||||
description = "Generates schema creation and drop scripts for supported databases."
|
||||
|
||||
configurations { vpp }
|
||||
dependencies { vpp 'foundrylogic.vpp:vpp:2.2.1' }
|
||||
|
||||
inputs.dir new File('src/main/sql')
|
||||
|
||||
def generatedResourcesDir = new File('src/main/resources/org/springframework/integration/jdbc')
|
||||
|
||||
outputs.dir generatedResourcesDir
|
||||
|
||||
ant.typedef(resource: 'foundrylogic/vpp/typedef.properties',
|
||||
classpath: configurations.vpp.asPath)
|
||||
ant.taskdef(resource: 'foundrylogic/vpp/taskdef.properties',
|
||||
classpath: configurations.vpp.asPath)
|
||||
|
||||
doLast {
|
||||
['hsqldb', 'h2', 'db2', 'derby', 'mysql', 'oracle', 'postgresql', 'sqlserver', 'sybase']
|
||||
.each { dbType ->
|
||||
ant.vppcopy(todir: generatedResourcesDir) {
|
||||
config {
|
||||
context {
|
||||
property key: 'includes', value: 'src/main/sql'
|
||||
property file: "src/main/sql/${dbType}.properties"
|
||||
}
|
||||
engine {
|
||||
property key: 'velocimacro.library', value: "src/main/sql/${dbType}.vpp"
|
||||
}
|
||||
}
|
||||
fileset dir: 'src/main/sql', includes: 'schema*.sql.vpp'
|
||||
mapper type: 'glob', from: '*.sql.vpp', to: "*-${dbType}.sql"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// tie schema generation to the build lifecycle
|
||||
compileJava.dependsOn generateSql
|
||||
@@ -1,12 +0,0 @@
|
||||
platform=db2
|
||||
# SQL language oddities
|
||||
BIGINT = BIGINT
|
||||
IDENTITY =
|
||||
DOUBLE = DOUBLE PRECISION
|
||||
BLOB = BLOB
|
||||
CLOB = CLOB
|
||||
TIMESTAMP = TIMESTAMP
|
||||
VARCHAR = VARCHAR
|
||||
# for generating drop statements...
|
||||
SEQUENCE = SEQUENCE
|
||||
INT_MESSAGE_SEQ = CREATE SEQUENCE INT_MESSAGE_SEQ START WITH 1 INCREMENT BY 1 NO CACHE NO CYCLE;
|
||||
@@ -1,3 +0,0 @@
|
||||
#macro (sequence $name $value)CREATE SEQUENCE ${name} AS BIGINT MAXVALUE 9223372036854775807 NO CYCLE;
|
||||
#end
|
||||
#macro (notnull $name $type)ALTER COLUMN ${name} SET NOT NULL#end
|
||||
@@ -1,13 +0,0 @@
|
||||
platform=db2
|
||||
# SQL language oddities
|
||||
BIGINT = BIGINT
|
||||
IDENTITY =
|
||||
GENERATED = GENERATED BY DEFAULT AS IDENTITY
|
||||
DOUBLE = DOUBLE PRECISION
|
||||
BLOB = BLOB
|
||||
CLOB = CLOB
|
||||
TIMESTAMP = TIMESTAMP
|
||||
VARCHAR = VARCHAR
|
||||
# for generating drop statements...
|
||||
SEQUENCE = TABLE
|
||||
AUTO_INCREMENT = GENERATED ALWAYS AS IDENTITY (START WITH 1, INCREMENT BY 1)
|
||||
@@ -1,3 +0,0 @@
|
||||
#macro (sequence $name $value)CREATE TABLE ${name} (ID BIGINT PRIMARY KEY GENERATED BY DEFAULT AS IDENTITY, DUMMY VARCHAR(1));
|
||||
#end
|
||||
#macro (notnull $name $type)ALTER COLUMN ${name} NOT NULL#end
|
||||
@@ -1,18 +0,0 @@
|
||||
#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};
|
||||
DROP TABLE $!{IFEXISTSBEFORE} INT_METADATA_STORE $!{IFEXISTS};
|
||||
#if(${INT_MESSAGE_SEQ})
|
||||
DROP SEQUENCE INT_MESSAGE_SEQ $!{IFEXISTS};
|
||||
#end
|
||||
@@ -1,13 +0,0 @@
|
||||
platform=h2
|
||||
# SQL language oddities
|
||||
BIGINT = BIGINT
|
||||
IDENTITY = IDENTITY
|
||||
IFEXISTS = IF EXISTS
|
||||
DOUBLE = DOUBLE PRECISION
|
||||
BLOB = LONGVARBINARY
|
||||
CLOB = LONGVARCHAR
|
||||
TIMESTAMP = TIMESTAMP
|
||||
VARCHAR = VARCHAR
|
||||
# for generating drop statements...
|
||||
SEQUENCE = SEQUENCE
|
||||
INT_MESSAGE_SEQ = CREATE SEQUENCE INT_MESSAGE_SEQ START WITH 1 INCREMENT BY 1;
|
||||
@@ -1,3 +0,0 @@
|
||||
#macro (sequence $name $value)CREATE SEQUENCE ${name};
|
||||
#end
|
||||
#macro (notnull $name $type)ALTER COLUMN ${name} ${type} NOT NULL#end
|
||||
@@ -1,13 +0,0 @@
|
||||
platform=hsqldb
|
||||
# SQL language oddities
|
||||
BIGINT = BIGINT
|
||||
IDENTITY = IDENTITY
|
||||
IFEXISTS = IF EXISTS
|
||||
DOUBLE = DOUBLE PRECISION
|
||||
BLOB = LONGVARBINARY
|
||||
CLOB = LONGVARCHAR
|
||||
TIMESTAMP = TIMESTAMP
|
||||
VARCHAR = VARCHAR
|
||||
# for generating drop statements...
|
||||
SEQUENCE = TABLE
|
||||
INT_MESSAGE_SEQ = CREATE SEQUENCE INT_MESSAGE_SEQ AS BIGINT START WITH 1 INCREMENT BY 1;
|
||||
@@ -1,5 +0,0 @@
|
||||
#macro (sequence $name $value)CREATE TABLE ${name} (
|
||||
ID BIGINT IDENTITY
|
||||
);
|
||||
#end
|
||||
#macro (notnull $name $type)ALTER COLUMN ${name} ${type} NOT NULL#end
|
||||
@@ -1,16 +0,0 @@
|
||||
platform=mysql
|
||||
# SQL language oddities
|
||||
BIGINT = BIGINT
|
||||
IDENTITY =
|
||||
GENERATED =
|
||||
VOODOO = ENGINE=InnoDB
|
||||
IFEXISTSBEFORE = IF EXISTS
|
||||
DOUBLE = DOUBLE PRECISION
|
||||
BLOB = BLOB
|
||||
CLOB = TEXT
|
||||
TIMESTAMP = DATETIME(6)
|
||||
VARCHAR = VARCHAR
|
||||
# for generating drop statements...
|
||||
SEQUENCE = TABLE
|
||||
AUTO_INCREMENT = AUTO_INCREMENT UNIQUE
|
||||
NODROPINDEX = true
|
||||
@@ -1,4 +0,0 @@
|
||||
#macro (sequence $name $value)CREATE TABLE ${name} (ID BIGINT NOT NULL) ENGINE=MYISAM;
|
||||
INSERT INTO ${name} values(0);
|
||||
#end
|
||||
#macro (notnull $name $type)MODIFY COLUMN ${name} ${type} NOT NULL#end
|
||||
@@ -1,13 +0,0 @@
|
||||
platform=oracle
|
||||
# SQL language oddities
|
||||
BIGINT = NUMBER(19\,0)
|
||||
IDENTITY =
|
||||
GENERATED =
|
||||
DOUBLE = NUMBER
|
||||
BLOB = BLOB
|
||||
CLOB = CLOB
|
||||
TIMESTAMP = TIMESTAMP
|
||||
VARCHAR = VARCHAR2
|
||||
# for generating drop statements...
|
||||
SEQUENCE = SEQUENCE
|
||||
INT_MESSAGE_SEQ = CREATE SEQUENCE INT_MESSAGE_SEQ START WITH 1 INCREMENT BY 1 NOCACHE NOCYCLE;
|
||||
@@ -1,3 +0,0 @@
|
||||
#macro (sequence $name $value)CREATE SEQUENCE ${name} START WITH ${value} MINVALUE 0 MAXVALUE 9223372036854775807 NOCYCLE;
|
||||
#end
|
||||
#macro (notnull $name $type)MODIFY ${name} NOT NULL#end
|
||||
@@ -1,14 +0,0 @@
|
||||
platform=postgresql
|
||||
# SQL language oddities
|
||||
BIGINT = BIGINT
|
||||
IDENTITY =
|
||||
GENERATED =
|
||||
DOUBLE = DOUBLE PRECISION
|
||||
BLOB = BYTEA
|
||||
CLOB = TEXT
|
||||
TIMESTAMP = TIMESTAMP
|
||||
VARCHAR = VARCHAR
|
||||
# for generating drop statements...
|
||||
SEQUENCE = SEQUENCE
|
||||
AUTO_INCREMENT = DEFAULT nextval('INT_MESSAGE_SEQ')
|
||||
INT_MESSAGE_SEQ = CREATE SEQUENCE INT_MESSAGE_SEQ START WITH 1 INCREMENT BY 1 NO CYCLE;
|
||||
@@ -1,3 +0,0 @@
|
||||
#macro (sequence $name $value)CREATE SEQUENCE ${name} MAXVALUE 9223372036854775807 NO CYCLE;
|
||||
#end
|
||||
#macro (notnull $name $type)ALTER COLUMN ${name} SET NOT NULL#end
|
||||
@@ -1,3 +0,0 @@
|
||||
-- Autogenerated: do not edit this file
|
||||
|
||||
#parse("${includes}/destroy.sql.vpp")
|
||||
@@ -1,62 +0,0 @@
|
||||
-- Autogenerated: do not edit this file
|
||||
|
||||
CREATE TABLE INT_MESSAGE (
|
||||
MESSAGE_ID CHAR(36),
|
||||
REGION ${VARCHAR}(100),
|
||||
CREATED_DATE ${TIMESTAMP} NOT NULL,
|
||||
MESSAGE_BYTES ${BLOB},
|
||||
constraint MESSAGE_PK primary key (MESSAGE_ID, REGION)
|
||||
)#if(${VOODOO}) ${VOODOO}#end;
|
||||
|
||||
CREATE INDEX INT_MESSAGE_IX1 ON INT_MESSAGE (CREATED_DATE);
|
||||
|
||||
CREATE TABLE INT_GROUP_TO_MESSAGE (
|
||||
GROUP_KEY CHAR(36),
|
||||
MESSAGE_ID CHAR(36),
|
||||
REGION ${VARCHAR}(100),
|
||||
constraint GROUP_TO_MESSAGE_PK primary key (GROUP_KEY, MESSAGE_ID, REGION)
|
||||
)#if(${VOODOO}) ${VOODOO}#end;
|
||||
|
||||
CREATE TABLE INT_MESSAGE_GROUP (
|
||||
GROUP_KEY CHAR(36),
|
||||
REGION ${VARCHAR}(100),
|
||||
MARKED ${BIGINT},
|
||||
COMPLETE ${BIGINT},
|
||||
LAST_RELEASED_SEQUENCE ${BIGINT},
|
||||
CREATED_DATE ${TIMESTAMP} NOT NULL,
|
||||
UPDATED_DATE ${TIMESTAMP} DEFAULT NULL,
|
||||
constraint MESSAGE_GROUP_PK primary key (GROUP_KEY, REGION)
|
||||
)#if(${VOODOO}) ${VOODOO}#end;
|
||||
|
||||
CREATE TABLE INT_LOCK (
|
||||
LOCK_KEY CHAR(36),
|
||||
REGION ${VARCHAR}(100),
|
||||
CLIENT_ID CHAR(36),
|
||||
CREATED_DATE ${TIMESTAMP} NOT NULL,
|
||||
constraint LOCK_PK primary key (LOCK_KEY, REGION)
|
||||
)#if(${VOODOO}) ${VOODOO}#end;
|
||||
|
||||
#if(${INT_MESSAGE_SEQ})${INT_MESSAGE_SEQ}#end
|
||||
|
||||
|
||||
CREATE TABLE INT_CHANNEL_MESSAGE (
|
||||
MESSAGE_ID CHAR(36) NOT NULL,
|
||||
GROUP_KEY CHAR(36) NOT NULL,
|
||||
CREATED_DATE ${BIGINT} NOT NULL,
|
||||
MESSAGE_PRIORITY ${BIGINT},
|
||||
MESSAGE_SEQUENCE ${BIGINT} NOT NULL #if(${AUTO_INCREMENT})${AUTO_INCREMENT}#end,
|
||||
MESSAGE_BYTES ${BLOB},
|
||||
REGION ${VARCHAR}(100) NOT NULL,
|
||||
constraint INT_CHANNEL_MESSAGE_PK primary key (GROUP_KEY, MESSAGE_ID, REGION)
|
||||
)#if(${VOODOO}) ${VOODOO}#end;
|
||||
|
||||
CREATE INDEX INT_CHANNEL_MSG_DATE_IDX ON INT_CHANNEL_MESSAGE (CREATED_DATE, MESSAGE_SEQUENCE);
|
||||
CREATE INDEX INT_CHANNEL_MSG_PRIORITY_IDX ON INT_CHANNEL_MESSAGE (MESSAGE_PRIORITY DESC, CREATED_DATE, MESSAGE_SEQUENCE);
|
||||
|
||||
|
||||
CREATE TABLE INT_METADATA_STORE (
|
||||
METADATA_KEY ${VARCHAR}(255) NOT NULL,
|
||||
METADATA_VALUE ${VARCHAR}(4000),
|
||||
REGION ${VARCHAR}(100) NOT NULL,
|
||||
constraint METADATA_STORE primary key (METADATA_KEY, REGION)
|
||||
)#if(${VOODOO}) ${VOODOO}#end;
|
||||
@@ -1,12 +0,0 @@
|
||||
# SQL language oddities
|
||||
BIGINT = BIGINT
|
||||
IDENTITY =
|
||||
GENERATED =
|
||||
DOUBLE = DOUBLE PRECISION
|
||||
BLOB = IMAGE
|
||||
CLOB = TEXT
|
||||
TIMESTAMP = DATETIME
|
||||
VARCHAR = VARCHAR
|
||||
# for generating drop statements...
|
||||
SEQUENCE = TABLE
|
||||
INT_MESSAGE_SEQ = CREATE SEQUENCE INT_MESSAGE_SEQ START WITH 1 INCREMENT BY 1 NO CACHE NO CYCLE;
|
||||
@@ -1,3 +0,0 @@
|
||||
#macro (sequence $name $value)CREATE TABLE ${name} (ID BIGINT IDENTITY);
|
||||
#end
|
||||
#macro (notnull $name $type)ALTER COLUMN ${name} ${type} NOT NULL#end
|
||||
@@ -1,14 +0,0 @@
|
||||
# SQL language oddities
|
||||
BIGINT = BIGINT
|
||||
IDENTITY =
|
||||
GENERATED =
|
||||
DOUBLE = DOUBLE PRECISION
|
||||
BLOB = IMAGE
|
||||
CLOB = TEXT
|
||||
TIMESTAMP = DATETIME
|
||||
VARCHAR = VARCHAR
|
||||
NULL = NULL
|
||||
# for generating drop statements...
|
||||
SEQUENCE = TABLE
|
||||
VOODOO = LOCK DATAROWS
|
||||
INT_MESSAGE_SEQ = CREATE SEQUENCE INT_MESSAGE_SEQ START WITH 1 INCREMENT BY 1 NO CACHE NO CYCLE;
|
||||
@@ -1,3 +0,0 @@
|
||||
#macro (sequence $name $value)CREATE TABLE ${name} (ID BIGINT IDENTITY);
|
||||
#end
|
||||
#macro (notnull $name $type)ALTER COLUMN ${name} ${type} NOT NULL#end
|
||||
@@ -10,9 +10,9 @@
|
||||
|
||||
<bean id="dataSource" class="oracle.jdbc.pool.OracleDataSource" destroy-method="close">
|
||||
<property name="connectionCachingEnabled" value="true" />
|
||||
<property name="URL" value="jdbc:oracle:thin:@//10.0.1.6:1521/XE" />
|
||||
<property name="password" value="TT2" />
|
||||
<property name="user" value="tt" />
|
||||
<property name="URL" value="jdbc:oracle:thin:@//[HOST]:1521/XE" />
|
||||
<property name="user" value="[USER]" />
|
||||
<property name="password" value="[PASSWORD]" />
|
||||
<property name="connectionCacheProperties">
|
||||
<props merge="default">
|
||||
<prop key="MinLimit">3</prop>
|
||||
|
||||
Reference in New Issue
Block a user