diff --git a/ebean-test/src/test/java/misc/migration/v1_0/DropMain.java b/ebean-test/src/test/java/misc/migration/v1_0/DropMain.java new file mode 100644 index 000000000..da7e6a250 --- /dev/null +++ b/ebean-test/src/test/java/misc/migration/v1_0/DropMain.java @@ -0,0 +1,48 @@ +package misc.migration.v1_0; + +import javax.persistence.*; +import java.util.List; + +/** + * Test-model referencing two other tables, which gets dropped for migration test in order to check for correct table drop + * procedure (first drop foreign keys, then the tables). + * + * @author Jonas Pöhler, FOCONIS AG + */ +@Entity +@Table(name = "drop_main") +public class DropMain { + + @Id + Integer id; + + @OneToMany(cascade = CascadeType.ALL, mappedBy = "parent") + List refsOne; + + @ManyToMany(cascade = CascadeType.ALL) + List refsMany; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public List getRefsOne() { + return refsOne; + } + + public void setRefsOne(List refsOne) { + this.refsOne = refsOne; + } + + public List getRefsMany() { + return refsMany; + } + + public void setRefsMany(List refsMany) { + this.refsMany = refsMany; + } +} diff --git a/ebean-test/src/test/java/misc/migration/v1_0/DropRefMany.java b/ebean-test/src/test/java/misc/migration/v1_0/DropRefMany.java new file mode 100644 index 000000000..a3727d5c2 --- /dev/null +++ b/ebean-test/src/test/java/misc/migration/v1_0/DropRefMany.java @@ -0,0 +1,35 @@ +package misc.migration.v1_0; + +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.ManyToMany; +import javax.persistence.ManyToOne; +import javax.persistence.Table; +import java.util.List; + +@Entity +@Table(name = "drop_ref_many") +public class DropRefMany { + + @Id + Integer id; + + @ManyToMany(cascade = {}, mappedBy = "refsMany") + List parents; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public List getParents() { + return parents; + } + + public void setParents(List parents) { + this.parents = parents; + } +} diff --git a/ebean-test/src/test/java/misc/migration/v1_0/DropRefOne.java b/ebean-test/src/test/java/misc/migration/v1_0/DropRefOne.java new file mode 100644 index 000000000..069b9274d --- /dev/null +++ b/ebean-test/src/test/java/misc/migration/v1_0/DropRefOne.java @@ -0,0 +1,33 @@ +package misc.migration.v1_0; + +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.ManyToOne; +import javax.persistence.Table; + +@Entity +@Table(name = "drop_ref_one") +public class DropRefOne { + + @Id + Integer id; + + @ManyToOne(cascade = {}) + DropMain parent; + + public Integer getId() { + return id; + } + + public void setId(Integer id) { + this.id = id; + } + + public DropMain getParent() { + return parent; + } + + public void setParent(DropMain parent) { + this.parent = parent; + } +} diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/clickhouse/1.0__initial.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/clickhouse/1.0__initial.sql index 228422449..3c8ce6567 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/clickhouse/1.0__initial.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/clickhouse/1.0__initial.sql @@ -45,6 +45,24 @@ create table migtest_fk_set_null ( one_id UInt64 ) ENGINE = Log(); +create table drop_main ( + id UInt32 +) ENGINE = Log(); + +create table drop_main_drop_ref_many ( + drop_main_id UInt32, + drop_ref_many_id UInt32 +) ENGINE = Log(); + +create table drop_ref_many ( + id UInt32 +) ENGINE = Log(); + +create table drop_ref_one ( + id UInt32, + parent_id UInt32 +) ENGINE = Log(); + create table migtest_e_basic ( id UInt32, status String, diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/clickhouse/1.2__dropsFor_1.1.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/clickhouse/1.2__dropsFor_1.1.sql index cb6860e63..5934a713a 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/clickhouse/1.2__dropsFor_1.1.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/clickhouse/1.2__dropsFor_1.1.sql @@ -7,5 +7,9 @@ alter table migtest_e_basic drop column eref_id; alter table migtest_e_history2 drop column obsolete_string1; alter table migtest_e_history2 drop column obsolete_string2; -- apply post alter +drop table if exists drop_main; +drop table if exists drop_main_drop_ref_many; +drop table if exists drop_ref_many; +drop table if exists drop_ref_one; drop table if exists "migtest_QuOtEd"; drop table if exists migtest_e_ref; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/clickhouse/idx_clickhouse.migrations b/ebean-test/src/test/resources/migrationtest/dbmigration/clickhouse/idx_clickhouse.migrations index 15a78f72e..b1ff6021b 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/clickhouse/idx_clickhouse.migrations +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/clickhouse/idx_clickhouse.migrations @@ -1,6 +1,6 @@ -193400547, 1.0__initial.sql +1672735407, 1.0__initial.sql 540706946, 1.1.sql -688811494, 1.2__dropsFor_1.1.sql +-875723380, 1.2__dropsFor_1.1.sql 1015552567, 1.3.sql 255653518, 1.4__dropsFor_1.3.sql diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/cockroach/1.0__initial.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/cockroach/1.0__initial.sql index 4f47e0774..79a5c4329 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/cockroach/1.0__initial.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/cockroach/1.0__initial.sql @@ -54,6 +54,28 @@ create table migtest_fk_set_null ( constraint pk_migtest_fk_set_null primary key (id) ); +create table drop_main ( + id integer generated by default as identity not null, + constraint pk_drop_main primary key (id) +); + +create table drop_main_drop_ref_many ( + drop_main_id integer not null, + drop_ref_many_id integer not null, + constraint pk_drop_main_drop_ref_many primary key (drop_main_id,drop_ref_many_id) +); + +create table drop_ref_many ( + id integer generated by default as identity not null, + constraint pk_drop_ref_many primary key (id) +); + +create table drop_ref_one ( + id integer generated by default as identity not null, + parent_id integer, + constraint pk_drop_ref_one primary key (id) +); + create table migtest_e_basic ( id integer generated by default as identity not null, status varchar(1), @@ -193,6 +215,15 @@ alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id forei create index ix_migtest_fk_set_null_one_id on migtest_fk_set_null (one_id); alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete set null on update restrict; +create index ix_drop_main_drop_ref_many_drop_main on drop_main_drop_ref_many (drop_main_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_main foreign key (drop_main_id) references drop_main (id) on delete restrict on update restrict; + +create index ix_drop_main_drop_ref_many_drop_ref_many on drop_main_drop_ref_many (drop_ref_many_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_ref_many foreign key (drop_ref_many_id) references drop_ref_many (id) on delete restrict on update restrict; + +create index ix_drop_ref_one_parent_id on drop_ref_one (parent_id); +alter table drop_ref_one add constraint fk_drop_ref_one_parent_id foreign key (parent_id) references drop_main (id) on delete restrict on update restrict; + create index ix_migtest_e_basic_eref_id on migtest_e_basic (eref_id); alter table migtest_e_basic add constraint fk_migtest_e_basic_eref_id foreign key (eref_id) references migtest_e_ref (id) on delete restrict on update restrict; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/cockroach/1.2__dropsFor_1.1.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/cockroach/1.2__dropsFor_1.1.sql index 44f13ac12..5fc81acf1 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/cockroach/1.2__dropsFor_1.1.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/cockroach/1.2__dropsFor_1.1.sql @@ -7,6 +7,13 @@ alter table migtest_e_basic drop column eref_id; alter table migtest_e_history2 drop column obsolete_string1; alter table migtest_e_history2 drop column obsolete_string2; -- apply post alter +drop table if exists drop_main cascade; +drop sequence if exists drop_main_seq; +drop table if exists drop_main_drop_ref_many cascade; +drop table if exists drop_ref_many cascade; +drop sequence if exists drop_ref_many_seq; +drop table if exists drop_ref_one cascade; +drop sequence if exists drop_ref_one_seq; drop table if exists "migtest_QuOtEd" cascade; drop table if exists migtest_e_ref cascade; drop sequence if exists migtest_e_ref_seq; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/cockroach/idx_cockroach.migrations b/ebean-test/src/test/resources/migrationtest/dbmigration/cockroach/idx_cockroach.migrations index debd08772..c19f1c53b 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/cockroach/idx_cockroach.migrations +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/cockroach/idx_cockroach.migrations @@ -1,6 +1,6 @@ -1434934404, 1.0__initial.sql +1867456246, 1.0__initial.sql 1284257915, 1.1.sql -856096334, 1.2__dropsFor_1.1.sql +395394572, 1.2__dropsFor_1.1.sql -1551362011, 1.3.sql -971909974, 1.4__dropsFor_1.3.sql 561281075, R__order_views.sql diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/db2fori/1.0__initial.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/db2fori/1.0__initial.sql index 9931da4b1..b4660d18f 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/db2fori/1.0__initial.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/db2fori/1.0__initial.sql @@ -54,6 +54,28 @@ create table migtest_fk_set_null ( constraint pk_migtest_fk_set_null primary key (id) ); +create table drop_main ( + id integer generated by default as identity not null, + constraint pk_drop_main primary key (id) +); + +create table drop_main_drop_ref_many ( + drop_main_id integer not null, + drop_ref_many_id integer not null, + constraint pk_drop_main_drop_ref_many primary key (drop_main_id,drop_ref_many_id) +); + +create table drop_ref_many ( + id integer generated by default as identity not null, + constraint pk_drop_ref_many primary key (id) +); + +create table drop_ref_one ( + id integer generated by default as identity not null, + parent_id integer, + constraint pk_drop_ref_one primary key (id) +); + create table migtest_e_basic ( id integer generated by default as identity not null, status varchar(1), @@ -232,6 +254,15 @@ alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id forei create index ix_migtest_fk_set_null_one_id on migtest_fk_set_null (one_id); alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete set null on update restrict; +create index ix_drop_main_drop_ref_many_drop_main on drop_main_drop_ref_many (drop_main_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_main foreign key (drop_main_id) references drop_main (id) on delete restrict on update restrict; + +create index ix_drop_main_drop_ref_many_drop_ref_many on drop_main_drop_ref_many (drop_ref_many_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_ref_many foreign key (drop_ref_many_id) references drop_ref_many (id) on delete restrict on update restrict; + +create index ix_drop_ref_one_parent_id on drop_ref_one (parent_id); +alter table drop_ref_one add constraint fk_drop_ref_one_parent_id foreign key (parent_id) references drop_main (id) on delete restrict on update restrict; + create index ix_migtest_e_basic_eref_id on migtest_e_basic (eref_id); alter table migtest_e_basic add constraint fk_migtest_e_basic_eref_id foreign key (eref_id) references migtest_e_ref (id) on delete restrict on update restrict; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/db2fori/1.2__dropsFor_1.1.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/db2fori/1.2__dropsFor_1.1.sql index 28b8850d6..f671f86d2 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/db2fori/1.2__dropsFor_1.1.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/db2fori/1.2__dropsFor_1.1.sql @@ -15,6 +15,31 @@ alter table migtest_e_history2_history drop column obsolete_string2; call sysproc.admin_cmd('reorg table migtest_e_history2_history'); -- apply post alter alter table migtest_e_history2 add versioning use history table migtest_e_history2_history; +drop table drop_main; +delimiter $$ +begin +if exists (select seqschema from syscat.sequences where seqschema = current_schema and ucase(seqname) = 'DROP_MAIN_SEQ') then + prepare stmt from 'drop sequence drop_main_seq'; + execute stmt; +end if; +end$$; +drop table drop_main_drop_ref_many; +drop table drop_ref_many; +delimiter $$ +begin +if exists (select seqschema from syscat.sequences where seqschema = current_schema and ucase(seqname) = 'DROP_REF_MANY_SEQ') then + prepare stmt from 'drop sequence drop_ref_many_seq'; + execute stmt; +end if; +end$$; +drop table drop_ref_one; +delimiter $$ +begin +if exists (select seqschema from syscat.sequences where seqschema = current_schema and ucase(seqname) = 'DROP_REF_ONE_SEQ') then + prepare stmt from 'drop sequence drop_ref_one_seq'; + execute stmt; +end if; +end$$; drop table "migtest_QuOtEd"; drop table migtest_e_ref; delimiter $$ diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/db2fori/idx_db2.migrations b/ebean-test/src/test/resources/migrationtest/dbmigration/db2fori/idx_db2.migrations index 16c7b2cec..b30c526fe 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/db2fori/idx_db2.migrations +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/db2fori/idx_db2.migrations @@ -1,6 +1,6 @@ --1467839063, 1.0__initial.sql +-283216660, 1.0__initial.sql -184000413, 1.1.sql --1187336846, 1.2__dropsFor_1.1.sql +135256939, 1.2__dropsFor_1.1.sql -150875853, 1.3.sql 946163478, 1.4__dropsFor_1.3.sql 561281075, R__order_views.sql diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/db2legacy/1.0__initial.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/db2legacy/1.0__initial.sql index 7b7bddd1d..1490ff004 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/db2legacy/1.0__initial.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/db2legacy/1.0__initial.sql @@ -54,6 +54,28 @@ create table migtest_fk_set_null ( constraint pk_migtest_fk_set_null primary key (id) ); +create table drop_main ( + id integer auto_increment not null, + constraint pk_drop_main primary key (id) +); + +create table drop_main_drop_ref_many ( + drop_main_id integer not null, + drop_ref_many_id integer not null, + constraint pk_drop_main_drop_ref_many primary key (drop_main_id,drop_ref_many_id) +); + +create table drop_ref_many ( + id integer auto_increment not null, + constraint pk_drop_ref_many primary key (id) +); + +create table drop_ref_one ( + id integer auto_increment not null, + parent_id integer, + constraint pk_drop_ref_one primary key (id) +); + create table migtest_e_basic ( id integer auto_increment not null, status varchar(1), @@ -194,6 +216,15 @@ alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id forei create index ix_migtest_fk_set_null_one_id on migtest_fk_set_null (one_id); alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete set null on update restrict; +create index ix_drop_main_drop_ref_many_drop_main on drop_main_drop_ref_many (drop_main_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_main foreign key (drop_main_id) references drop_main (id) on delete restrict on update restrict; + +create index ix_drop_main_drop_ref_many_drop_ref_many on drop_main_drop_ref_many (drop_ref_many_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_ref_many foreign key (drop_ref_many_id) references drop_ref_many (id) on delete restrict on update restrict; + +create index ix_drop_ref_one_parent_id on drop_ref_one (parent_id); +alter table drop_ref_one add constraint fk_drop_ref_one_parent_id foreign key (parent_id) references drop_main (id) on delete restrict on update restrict; + create index ix_migtest_e_basic_eref_id on migtest_e_basic (eref_id); alter table migtest_e_basic add constraint fk_migtest_e_basic_eref_id foreign key (eref_id) references migtest_e_ref (id) on delete restrict on update restrict; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/db2legacy/1.2__dropsFor_1.1.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/db2legacy/1.2__dropsFor_1.1.sql index cb6860e63..5934a713a 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/db2legacy/1.2__dropsFor_1.1.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/db2legacy/1.2__dropsFor_1.1.sql @@ -7,5 +7,9 @@ alter table migtest_e_basic drop column eref_id; alter table migtest_e_history2 drop column obsolete_string1; alter table migtest_e_history2 drop column obsolete_string2; -- apply post alter +drop table if exists drop_main; +drop table if exists drop_main_drop_ref_many; +drop table if exists drop_ref_many; +drop table if exists drop_ref_one; drop table if exists "migtest_QuOtEd"; drop table if exists migtest_e_ref; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/db2legacy/idx_generic.migrations b/ebean-test/src/test/resources/migrationtest/dbmigration/db2legacy/idx_generic.migrations index c9faf50c4..051853e41 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/db2legacy/idx_generic.migrations +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/db2legacy/idx_generic.migrations @@ -1,6 +1,6 @@ --1547037623, 1.0__initial.sql +-528359263, 1.0__initial.sql 253988246, 1.1.sql -688811494, 1.2__dropsFor_1.1.sql +-875723380, 1.2__dropsFor_1.1.sql 509168727, 1.3.sql 255653518, 1.4__dropsFor_1.3.sql diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/db2luw/1.0__initial.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/db2luw/1.0__initial.sql index 8b9d60aad..132b608f7 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/db2luw/1.0__initial.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/db2luw/1.0__initial.sql @@ -54,6 +54,28 @@ create table migtest_fk_set_null ( constraint pk_migtest_fk_set_null primary key (id) ); +create table drop_main ( + id integer generated by default as identity not null, + constraint pk_drop_main primary key (id) +); + +create table drop_main_drop_ref_many ( + drop_main_id integer not null, + drop_ref_many_id integer not null, + constraint pk_drop_main_drop_ref_many primary key (drop_main_id,drop_ref_many_id) +); + +create table drop_ref_many ( + id integer generated by default as identity not null, + constraint pk_drop_ref_many primary key (id) +); + +create table drop_ref_one ( + id integer generated by default as identity not null, + parent_id integer, + constraint pk_drop_ref_one primary key (id) +); + create table migtest_e_basic ( id integer generated by default as identity not null, status varchar(1), @@ -232,6 +254,15 @@ alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id forei create index ix_migtest_fk_set_null_one_id on migtest_fk_set_null (one_id); alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete set null on update restrict; +create index ix_drop_main_drop_ref_many_drop_main on drop_main_drop_ref_many (drop_main_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_main foreign key (drop_main_id) references drop_main (id) on delete restrict on update restrict; + +create index ix_drop_main_drop_ref_many_drop_ref_many on drop_main_drop_ref_many (drop_ref_many_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_ref_many foreign key (drop_ref_many_id) references drop_ref_many (id) on delete restrict on update restrict; + +create index ix_drop_ref_one_parent_id on drop_ref_one (parent_id); +alter table drop_ref_one add constraint fk_drop_ref_one_parent_id foreign key (parent_id) references drop_main (id) on delete restrict on update restrict; + create index ix_migtest_e_basic_eref_id on migtest_e_basic (eref_id); alter table migtest_e_basic add constraint fk_migtest_e_basic_eref_id foreign key (eref_id) references migtest_e_ref (id) on delete restrict on update restrict; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/db2luw/1.2__dropsFor_1.1.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/db2luw/1.2__dropsFor_1.1.sql index 28b8850d6..f671f86d2 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/db2luw/1.2__dropsFor_1.1.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/db2luw/1.2__dropsFor_1.1.sql @@ -15,6 +15,31 @@ alter table migtest_e_history2_history drop column obsolete_string2; call sysproc.admin_cmd('reorg table migtest_e_history2_history'); -- apply post alter alter table migtest_e_history2 add versioning use history table migtest_e_history2_history; +drop table drop_main; +delimiter $$ +begin +if exists (select seqschema from syscat.sequences where seqschema = current_schema and ucase(seqname) = 'DROP_MAIN_SEQ') then + prepare stmt from 'drop sequence drop_main_seq'; + execute stmt; +end if; +end$$; +drop table drop_main_drop_ref_many; +drop table drop_ref_many; +delimiter $$ +begin +if exists (select seqschema from syscat.sequences where seqschema = current_schema and ucase(seqname) = 'DROP_REF_MANY_SEQ') then + prepare stmt from 'drop sequence drop_ref_many_seq'; + execute stmt; +end if; +end$$; +drop table drop_ref_one; +delimiter $$ +begin +if exists (select seqschema from syscat.sequences where seqschema = current_schema and ucase(seqname) = 'DROP_REF_ONE_SEQ') then + prepare stmt from 'drop sequence drop_ref_one_seq'; + execute stmt; +end if; +end$$; drop table "migtest_QuOtEd"; drop table migtest_e_ref; delimiter $$ diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/db2luw/idx_db2.migrations b/ebean-test/src/test/resources/migrationtest/dbmigration/db2luw/idx_db2.migrations index 146c2c1d8..c88aa71d7 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/db2luw/idx_db2.migrations +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/db2luw/idx_db2.migrations @@ -1,7 +1,7 @@ 1307787475, I__create_tablespaces.sql -2058232717, 1.0__initial.sql +1681764655, 1.0__initial.sql -1450326352, 1.1.sql --1187336846, 1.2__dropsFor_1.1.sql +135256939, 1.2__dropsFor_1.1.sql 1976888196, 1.3.sql 946163478, 1.4__dropsFor_1.3.sql 561281075, R__order_views.sql diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/db2zos/1.0__initial.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/db2zos/1.0__initial.sql index 8b9d60aad..132b608f7 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/db2zos/1.0__initial.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/db2zos/1.0__initial.sql @@ -54,6 +54,28 @@ create table migtest_fk_set_null ( constraint pk_migtest_fk_set_null primary key (id) ); +create table drop_main ( + id integer generated by default as identity not null, + constraint pk_drop_main primary key (id) +); + +create table drop_main_drop_ref_many ( + drop_main_id integer not null, + drop_ref_many_id integer not null, + constraint pk_drop_main_drop_ref_many primary key (drop_main_id,drop_ref_many_id) +); + +create table drop_ref_many ( + id integer generated by default as identity not null, + constraint pk_drop_ref_many primary key (id) +); + +create table drop_ref_one ( + id integer generated by default as identity not null, + parent_id integer, + constraint pk_drop_ref_one primary key (id) +); + create table migtest_e_basic ( id integer generated by default as identity not null, status varchar(1), @@ -232,6 +254,15 @@ alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id forei create index ix_migtest_fk_set_null_one_id on migtest_fk_set_null (one_id); alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete set null on update restrict; +create index ix_drop_main_drop_ref_many_drop_main on drop_main_drop_ref_many (drop_main_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_main foreign key (drop_main_id) references drop_main (id) on delete restrict on update restrict; + +create index ix_drop_main_drop_ref_many_drop_ref_many on drop_main_drop_ref_many (drop_ref_many_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_ref_many foreign key (drop_ref_many_id) references drop_ref_many (id) on delete restrict on update restrict; + +create index ix_drop_ref_one_parent_id on drop_ref_one (parent_id); +alter table drop_ref_one add constraint fk_drop_ref_one_parent_id foreign key (parent_id) references drop_main (id) on delete restrict on update restrict; + create index ix_migtest_e_basic_eref_id on migtest_e_basic (eref_id); alter table migtest_e_basic add constraint fk_migtest_e_basic_eref_id foreign key (eref_id) references migtest_e_ref (id) on delete restrict on update restrict; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/db2zos/1.2__dropsFor_1.1.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/db2zos/1.2__dropsFor_1.1.sql index 28b8850d6..f671f86d2 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/db2zos/1.2__dropsFor_1.1.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/db2zos/1.2__dropsFor_1.1.sql @@ -15,6 +15,31 @@ alter table migtest_e_history2_history drop column obsolete_string2; call sysproc.admin_cmd('reorg table migtest_e_history2_history'); -- apply post alter alter table migtest_e_history2 add versioning use history table migtest_e_history2_history; +drop table drop_main; +delimiter $$ +begin +if exists (select seqschema from syscat.sequences where seqschema = current_schema and ucase(seqname) = 'DROP_MAIN_SEQ') then + prepare stmt from 'drop sequence drop_main_seq'; + execute stmt; +end if; +end$$; +drop table drop_main_drop_ref_many; +drop table drop_ref_many; +delimiter $$ +begin +if exists (select seqschema from syscat.sequences where seqschema = current_schema and ucase(seqname) = 'DROP_REF_MANY_SEQ') then + prepare stmt from 'drop sequence drop_ref_many_seq'; + execute stmt; +end if; +end$$; +drop table drop_ref_one; +delimiter $$ +begin +if exists (select seqschema from syscat.sequences where seqschema = current_schema and ucase(seqname) = 'DROP_REF_ONE_SEQ') then + prepare stmt from 'drop sequence drop_ref_one_seq'; + execute stmt; +end if; +end$$; drop table "migtest_QuOtEd"; drop table migtest_e_ref; delimiter $$ diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/db2zos/idx_db2.migrations b/ebean-test/src/test/resources/migrationtest/dbmigration/db2zos/idx_db2.migrations index 2d8e70ad2..39f1862fd 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/db2zos/idx_db2.migrations +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/db2zos/idx_db2.migrations @@ -1,6 +1,6 @@ -2058232717, 1.0__initial.sql +1681764655, 1.0__initial.sql -1450326352, 1.1.sql --1187336846, 1.2__dropsFor_1.1.sql +135256939, 1.2__dropsFor_1.1.sql 1976888196, 1.3.sql 946163478, 1.4__dropsFor_1.3.sql 561281075, R__order_views.sql diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/generic/1.0__initial.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/generic/1.0__initial.sql index 7b7bddd1d..1490ff004 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/generic/1.0__initial.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/generic/1.0__initial.sql @@ -54,6 +54,28 @@ create table migtest_fk_set_null ( constraint pk_migtest_fk_set_null primary key (id) ); +create table drop_main ( + id integer auto_increment not null, + constraint pk_drop_main primary key (id) +); + +create table drop_main_drop_ref_many ( + drop_main_id integer not null, + drop_ref_many_id integer not null, + constraint pk_drop_main_drop_ref_many primary key (drop_main_id,drop_ref_many_id) +); + +create table drop_ref_many ( + id integer auto_increment not null, + constraint pk_drop_ref_many primary key (id) +); + +create table drop_ref_one ( + id integer auto_increment not null, + parent_id integer, + constraint pk_drop_ref_one primary key (id) +); + create table migtest_e_basic ( id integer auto_increment not null, status varchar(1), @@ -194,6 +216,15 @@ alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id forei create index ix_migtest_fk_set_null_one_id on migtest_fk_set_null (one_id); alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete set null on update restrict; +create index ix_drop_main_drop_ref_many_drop_main on drop_main_drop_ref_many (drop_main_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_main foreign key (drop_main_id) references drop_main (id) on delete restrict on update restrict; + +create index ix_drop_main_drop_ref_many_drop_ref_many on drop_main_drop_ref_many (drop_ref_many_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_ref_many foreign key (drop_ref_many_id) references drop_ref_many (id) on delete restrict on update restrict; + +create index ix_drop_ref_one_parent_id on drop_ref_one (parent_id); +alter table drop_ref_one add constraint fk_drop_ref_one_parent_id foreign key (parent_id) references drop_main (id) on delete restrict on update restrict; + create index ix_migtest_e_basic_eref_id on migtest_e_basic (eref_id); alter table migtest_e_basic add constraint fk_migtest_e_basic_eref_id foreign key (eref_id) references migtest_e_ref (id) on delete restrict on update restrict; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/generic/1.2__dropsFor_1.1.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/generic/1.2__dropsFor_1.1.sql index cb6860e63..5934a713a 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/generic/1.2__dropsFor_1.1.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/generic/1.2__dropsFor_1.1.sql @@ -7,5 +7,9 @@ alter table migtest_e_basic drop column eref_id; alter table migtest_e_history2 drop column obsolete_string1; alter table migtest_e_history2 drop column obsolete_string2; -- apply post alter +drop table if exists drop_main; +drop table if exists drop_main_drop_ref_many; +drop table if exists drop_ref_many; +drop table if exists drop_ref_one; drop table if exists "migtest_QuOtEd"; drop table if exists migtest_e_ref; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/generic/idx_generic.migrations b/ebean-test/src/test/resources/migrationtest/dbmigration/generic/idx_generic.migrations index c9faf50c4..051853e41 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/generic/idx_generic.migrations +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/generic/idx_generic.migrations @@ -1,6 +1,6 @@ --1547037623, 1.0__initial.sql +-528359263, 1.0__initial.sql 253988246, 1.1.sql -688811494, 1.2__dropsFor_1.1.sql +-875723380, 1.2__dropsFor_1.1.sql 509168727, 1.3.sql 255653518, 1.4__dropsFor_1.3.sql diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/h2/1.0__initial.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/h2/1.0__initial.sql index d405e6e70..93a101a08 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/h2/1.0__initial.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/h2/1.0__initial.sql @@ -54,6 +54,28 @@ create table migtest_fk_set_null ( constraint pk_migtest_fk_set_null primary key (id) ); +create table drop_main ( + id integer generated by default as identity not null, + constraint pk_drop_main primary key (id) +); + +create table drop_main_drop_ref_many ( + drop_main_id integer not null, + drop_ref_many_id integer not null, + constraint pk_drop_main_drop_ref_many primary key (drop_main_id,drop_ref_many_id) +); + +create table drop_ref_many ( + id integer generated by default as identity not null, + constraint pk_drop_ref_many primary key (id) +); + +create table drop_ref_one ( + id integer generated by default as identity not null, + parent_id integer, + constraint pk_drop_ref_one primary key (id) +); + create table migtest_e_basic ( id integer generated by default as identity not null, status varchar(1), @@ -269,6 +291,15 @@ alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id forei create index ix_migtest_fk_set_null_one_id on migtest_fk_set_null (one_id); alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete set null on update restrict; +create index ix_drop_main_drop_ref_many_drop_main on drop_main_drop_ref_many (drop_main_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_main foreign key (drop_main_id) references drop_main (id) on delete restrict on update restrict; + +create index ix_drop_main_drop_ref_many_drop_ref_many on drop_main_drop_ref_many (drop_ref_many_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_ref_many foreign key (drop_ref_many_id) references drop_ref_many (id) on delete restrict on update restrict; + +create index ix_drop_ref_one_parent_id on drop_ref_one (parent_id); +alter table drop_ref_one add constraint fk_drop_ref_one_parent_id foreign key (parent_id) references drop_main (id) on delete restrict on update restrict; + create index ix_migtest_e_basic_eref_id on migtest_e_basic (eref_id); alter table migtest_e_basic add constraint fk_migtest_e_basic_eref_id foreign key (eref_id) references migtest_e_ref (id) on delete restrict on update restrict; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/h2/1.2__dropsFor_1.1.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/h2/1.2__dropsFor_1.1.sql index a0c8ec44b..d270bde5e 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/h2/1.2__dropsFor_1.1.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/h2/1.2__dropsFor_1.1.sql @@ -14,6 +14,13 @@ alter table migtest_e_history2_history drop column obsolete_string2; -- apply post alter create view migtest_e_history2_with_history as select * from migtest_e_history2 union all select * from migtest_e_history2_history; create trigger migtest_e_history2_history_upd before update,delete on migtest_e_history2 for each row call "io.ebean.platform.h2.H2HistoryTrigger"; +drop table if exists drop_main; +drop sequence if exists drop_main_seq; +drop table if exists drop_main_drop_ref_many; +drop table if exists drop_ref_many; +drop sequence if exists drop_ref_many_seq; +drop table if exists drop_ref_one; +drop sequence if exists drop_ref_one_seq; drop table if exists "migtest_QuOtEd"; drop table if exists migtest_e_ref; drop sequence if exists migtest_e_ref_seq; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/h2/idx_h2.migrations b/ebean-test/src/test/resources/migrationtest/dbmigration/h2/idx_h2.migrations index a58bd9139..47e28f979 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/h2/idx_h2.migrations +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/h2/idx_h2.migrations @@ -1,6 +1,6 @@ --1854589550, 1.0__initial.sql +400361768, 1.0__initial.sql 1979519453, 1.1.sql -1579867974, 1.2__dropsFor_1.1.sql +2123154375, 1.2__dropsFor_1.1.sql -285485598, 1.3.sql -1120611041, 1.4__dropsFor_1.3.sql 783227075, R__multi_comments.sql diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/hana/1.0__initial.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/hana/1.0__initial.sql index 2c4188555..b42347e19 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/hana/1.0__initial.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/hana/1.0__initial.sql @@ -54,6 +54,28 @@ create column table migtest_fk_set_null ( constraint pk_migtest_fk_set_null primary key (id) ); +create column table drop_main ( + id integer generated by default as identity not null, + constraint pk_drop_main primary key (id) +); + +create column table drop_main_drop_ref_many ( + drop_main_id integer not null, + drop_ref_many_id integer not null, + constraint pk_drop_main_drop_ref_many primary key (drop_main_id,drop_ref_many_id) +); + +create column table drop_ref_many ( + id integer generated by default as identity not null, + constraint pk_drop_ref_many primary key (id) +); + +create column table drop_ref_one ( + id integer generated by default as identity not null, + parent_id integer, + constraint pk_drop_ref_one primary key (id) +); + create column table migtest_e_basic ( id integer generated by default as identity not null, status nvarchar(1), @@ -275,6 +297,15 @@ alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id forei -- explicit index "ix_migtest_fk_set_null_one_id" for single column "one_id" of table "migtest_fk_set_null" is not necessary; alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete set null on update restrict; +-- explicit index "ix_drop_main_drop_ref_many_drop_main" for single column "drop_main_id" of table "drop_main_drop_ref_many" is not necessary; +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_main foreign key (drop_main_id) references drop_main (id) on delete restrict on update restrict; + +-- explicit index "ix_drop_main_drop_ref_many_drop_ref_many" for single column "drop_ref_many_id" of table "drop_main_drop_ref_many" is not necessary; +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_ref_many foreign key (drop_ref_many_id) references drop_ref_many (id) on delete restrict on update restrict; + +-- explicit index "ix_drop_ref_one_parent_id" for single column "parent_id" of table "drop_ref_one" is not necessary; +alter table drop_ref_one add constraint fk_drop_ref_one_parent_id foreign key (parent_id) references drop_main (id) on delete restrict on update restrict; + -- explicit index "ix_migtest_e_basic_eref_id" for single column "eref_id" of table "migtest_e_basic" is not necessary; alter table migtest_e_basic add constraint fk_migtest_e_basic_eref_id foreign key (eref_id) references migtest_e_ref (id) on delete restrict on update restrict; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/hana/1.2__dropsFor_1.1.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/hana/1.2__dropsFor_1.1.sql index b5fe0f04f..6fcca7c67 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/hana/1.2__dropsFor_1.1.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/hana/1.2__dropsFor_1.1.sql @@ -12,5 +12,9 @@ CALL usp_ebean_drop_column('migtest_e_history2_history', 'obsolete_string1'); CALL usp_ebean_drop_column('migtest_e_history2_history', 'obsolete_string2'); -- apply post alter alter table migtest_e_history2 add system versioning history table migtest_e_history2_history not validated; +drop table drop_main cascade; +drop table drop_main_drop_ref_many cascade; +drop table drop_ref_many cascade; +drop table drop_ref_one cascade; drop table "migtest_QuOtEd" cascade; drop table migtest_e_ref cascade; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/hana/idx_hana.migrations b/ebean-test/src/test/resources/migrationtest/dbmigration/hana/idx_hana.migrations index 467fc71ec..7e90d16f0 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/hana/idx_hana.migrations +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/hana/idx_hana.migrations @@ -1,7 +1,7 @@ -745347271, I__create_procs.sql --2017770851, 1.0__initial.sql +-1399184401, 1.0__initial.sql -1727762906, 1.1.sql -1535221752, 1.2__dropsFor_1.1.sql +-1209748806, 1.2__dropsFor_1.1.sql -1046661128, 1.3.sql 1185007986, 1.4__dropsFor_1.3.sql 1906063401, R__order_views_hana.sql diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/hsqldb/1.0__initial.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/hsqldb/1.0__initial.sql index ff2f34299..90807ee40 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/hsqldb/1.0__initial.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/hsqldb/1.0__initial.sql @@ -54,6 +54,28 @@ create table migtest_fk_set_null ( constraint pk_migtest_fk_set_null primary key (id) ); +create table drop_main ( + id integer generated by default as identity (start with 1) not null, + constraint pk_drop_main primary key (id) +); + +create table drop_main_drop_ref_many ( + drop_main_id integer not null, + drop_ref_many_id integer not null, + constraint pk_drop_main_drop_ref_many primary key (drop_main_id,drop_ref_many_id) +); + +create table drop_ref_many ( + id integer generated by default as identity (start with 1) not null, + constraint pk_drop_ref_many primary key (id) +); + +create table drop_ref_one ( + id integer generated by default as identity (start with 1) not null, + parent_id integer, + constraint pk_drop_ref_one primary key (id) +); + create table migtest_e_basic ( id integer generated by default as identity (start with 1) not null, status varchar(1), @@ -194,6 +216,15 @@ alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id forei create index ix_migtest_fk_set_null_one_id on migtest_fk_set_null (one_id); alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete set null on update restrict; +create index ix_drop_main_drop_ref_many_drop_main on drop_main_drop_ref_many (drop_main_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_main foreign key (drop_main_id) references drop_main (id) on delete restrict on update restrict; + +create index ix_drop_main_drop_ref_many_drop_ref_many on drop_main_drop_ref_many (drop_ref_many_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_ref_many foreign key (drop_ref_many_id) references drop_ref_many (id) on delete restrict on update restrict; + +create index ix_drop_ref_one_parent_id on drop_ref_one (parent_id); +alter table drop_ref_one add constraint fk_drop_ref_one_parent_id foreign key (parent_id) references drop_main (id) on delete restrict on update restrict; + create index ix_migtest_e_basic_eref_id on migtest_e_basic (eref_id); alter table migtest_e_basic add constraint fk_migtest_e_basic_eref_id foreign key (eref_id) references migtest_e_ref (id) on delete restrict on update restrict; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/hsqldb/1.2__dropsFor_1.1.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/hsqldb/1.2__dropsFor_1.1.sql index eeb8a6a1c..25d0b60d8 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/hsqldb/1.2__dropsFor_1.1.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/hsqldb/1.2__dropsFor_1.1.sql @@ -7,6 +7,13 @@ alter table migtest_e_basic drop column eref_id; alter table migtest_e_history2 drop column obsolete_string1; alter table migtest_e_history2 drop column obsolete_string2; -- apply post alter +drop table if exists drop_main; +drop sequence if exists drop_main_seq; +drop table if exists drop_main_drop_ref_many; +drop table if exists drop_ref_many; +drop sequence if exists drop_ref_many_seq; +drop table if exists drop_ref_one; +drop sequence if exists drop_ref_one_seq; drop table if exists "migtest_QuOtEd"; drop table if exists migtest_e_ref; drop sequence if exists migtest_e_ref_seq; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/hsqldb/idx_hsqldb.migrations b/ebean-test/src/test/resources/migrationtest/dbmigration/hsqldb/idx_hsqldb.migrations index 61c09dc8e..3d0efa7a9 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/hsqldb/idx_hsqldb.migrations +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/hsqldb/idx_hsqldb.migrations @@ -1,6 +1,6 @@ -1833930558, 1.0__initial.sql +617421105, 1.0__initial.sql 84224587, 1.1.sql --848622216, 1.2__dropsFor_1.1.sql +1366518530, 1.2__dropsFor_1.1.sql 19356381, 1.3.sql 1661935263, 1.4__dropsFor_1.3.sql 861001272, R__order_views_hsqldb.sql diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/mariadb-noprocs/1.0__initial.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/mariadb-noprocs/1.0__initial.sql index f9b1b3f43..18c10634b 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/mariadb-noprocs/1.0__initial.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/mariadb-noprocs/1.0__initial.sql @@ -54,6 +54,28 @@ create table migtest_fk_set_null ( constraint pk_migtest_fk_set_null primary key (id) ); +create table drop_main ( + id integer auto_increment not null, + constraint pk_drop_main primary key (id) +); + +create table drop_main_drop_ref_many ( + drop_main_id integer not null, + drop_ref_many_id integer not null, + constraint pk_drop_main_drop_ref_many primary key (drop_main_id,drop_ref_many_id) +); + +create table drop_ref_many ( + id integer auto_increment not null, + constraint pk_drop_ref_many primary key (id) +); + +create table drop_ref_one ( + id integer auto_increment not null, + parent_id integer, + constraint pk_drop_ref_one primary key (id) +); + create table migtest_e_basic ( id integer auto_increment not null, status varchar(1), @@ -195,6 +217,15 @@ alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id forei create index ix_migtest_fk_set_null_one_id on migtest_fk_set_null (one_id); alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete set null on update restrict; +create index ix_drop_main_drop_ref_many_drop_main on drop_main_drop_ref_many (drop_main_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_main foreign key (drop_main_id) references drop_main (id) on delete restrict on update restrict; + +create index ix_drop_main_drop_ref_many_drop_ref_many on drop_main_drop_ref_many (drop_ref_many_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_ref_many foreign key (drop_ref_many_id) references drop_ref_many (id) on delete restrict on update restrict; + +create index ix_drop_ref_one_parent_id on drop_ref_one (parent_id); +alter table drop_ref_one add constraint fk_drop_ref_one_parent_id foreign key (parent_id) references drop_main (id) on delete restrict on update restrict; + create index ix_migtest_e_basic_eref_id on migtest_e_basic (eref_id); alter table migtest_e_basic add constraint fk_migtest_e_basic_eref_id foreign key (eref_id) references migtest_e_ref (id) on delete restrict on update restrict; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/mariadb-noprocs/1.2__dropsFor_1.1.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/mariadb-noprocs/1.2__dropsFor_1.1.sql index 60699805e..11a53de7f 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/mariadb-noprocs/1.2__dropsFor_1.1.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/mariadb-noprocs/1.2__dropsFor_1.1.sql @@ -9,6 +9,13 @@ alter table migtest_e_basic drop column eref_id; alter table migtest_e_history2 drop column obsolete_string1; alter table migtest_e_history2 drop column obsolete_string2; -- apply post alter +drop table if exists drop_main; +drop sequence if exists drop_main_seq; +drop table if exists drop_main_drop_ref_many; +drop table if exists drop_ref_many; +drop sequence if exists drop_ref_many_seq; +drop table if exists drop_ref_one; +drop sequence if exists drop_ref_one_seq; drop table if exists `migtest_QuOtEd`; drop table if exists migtest_e_ref; drop sequence if exists migtest_e_ref_seq; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/mariadb-noprocs/idx_mariadb.migrations b/ebean-test/src/test/resources/migrationtest/dbmigration/mariadb-noprocs/idx_mariadb.migrations index 98022f4e3..915ee3c2b 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/mariadb-noprocs/idx_mariadb.migrations +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/mariadb-noprocs/idx_mariadb.migrations @@ -1,6 +1,6 @@ --2111548334, 1.0__initial.sql +-1588268581, 1.0__initial.sql -1101751768, 1.1.sql -919151678, 1.2__dropsFor_1.1.sql +-799907262, 1.2__dropsFor_1.1.sql -1572621686, 1.3.sql 1686135364, 1.4__dropsFor_1.3.sql 561281075, R__order_views.sql diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/mariadb/1.0__initial.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/mariadb/1.0__initial.sql index f9b1b3f43..18c10634b 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/mariadb/1.0__initial.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/mariadb/1.0__initial.sql @@ -54,6 +54,28 @@ create table migtest_fk_set_null ( constraint pk_migtest_fk_set_null primary key (id) ); +create table drop_main ( + id integer auto_increment not null, + constraint pk_drop_main primary key (id) +); + +create table drop_main_drop_ref_many ( + drop_main_id integer not null, + drop_ref_many_id integer not null, + constraint pk_drop_main_drop_ref_many primary key (drop_main_id,drop_ref_many_id) +); + +create table drop_ref_many ( + id integer auto_increment not null, + constraint pk_drop_ref_many primary key (id) +); + +create table drop_ref_one ( + id integer auto_increment not null, + parent_id integer, + constraint pk_drop_ref_one primary key (id) +); + create table migtest_e_basic ( id integer auto_increment not null, status varchar(1), @@ -195,6 +217,15 @@ alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id forei create index ix_migtest_fk_set_null_one_id on migtest_fk_set_null (one_id); alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete set null on update restrict; +create index ix_drop_main_drop_ref_many_drop_main on drop_main_drop_ref_many (drop_main_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_main foreign key (drop_main_id) references drop_main (id) on delete restrict on update restrict; + +create index ix_drop_main_drop_ref_many_drop_ref_many on drop_main_drop_ref_many (drop_ref_many_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_ref_many foreign key (drop_ref_many_id) references drop_ref_many (id) on delete restrict on update restrict; + +create index ix_drop_ref_one_parent_id on drop_ref_one (parent_id); +alter table drop_ref_one add constraint fk_drop_ref_one_parent_id foreign key (parent_id) references drop_main (id) on delete restrict on update restrict; + create index ix_migtest_e_basic_eref_id on migtest_e_basic (eref_id); alter table migtest_e_basic add constraint fk_migtest_e_basic_eref_id foreign key (eref_id) references migtest_e_ref (id) on delete restrict on update restrict; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/mariadb/1.2__dropsFor_1.1.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/mariadb/1.2__dropsFor_1.1.sql index 8d64a0804..7ee0a4023 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/mariadb/1.2__dropsFor_1.1.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/mariadb/1.2__dropsFor_1.1.sql @@ -9,6 +9,13 @@ CALL usp_ebean_drop_column('migtest_e_basic', 'eref_id'); CALL usp_ebean_drop_column('migtest_e_history2', 'obsolete_string1'); CALL usp_ebean_drop_column('migtest_e_history2', 'obsolete_string2'); -- apply post alter +drop table if exists drop_main; +drop sequence if exists drop_main_seq; +drop table if exists drop_main_drop_ref_many; +drop table if exists drop_ref_many; +drop sequence if exists drop_ref_many_seq; +drop table if exists drop_ref_one; +drop sequence if exists drop_ref_one_seq; drop table if exists `migtest_QuOtEd`; drop table if exists migtest_e_ref; drop sequence if exists migtest_e_ref_seq; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/mariadb/idx_mariadb.migrations b/ebean-test/src/test/resources/migrationtest/dbmigration/mariadb/idx_mariadb.migrations index 9b6cb159a..b83a472a0 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/mariadb/idx_mariadb.migrations +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/mariadb/idx_mariadb.migrations @@ -1,7 +1,7 @@ -1933396282, I__create_procs.sql --2111548334, 1.0__initial.sql +-1588268581, 1.0__initial.sql -1101751768, 1.1.sql -1187950993, 1.2__dropsFor_1.1.sql +1653772183, 1.2__dropsFor_1.1.sql -1572621686, 1.3.sql 772508824, 1.4__dropsFor_1.3.sql 561281075, R__order_views.sql diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/model/1.0__initial.model.xml b/ebean-test/src/test/resources/migrationtest/dbmigration/model/1.0__initial.model.xml index b0d93151a..d3b46df24 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/model/1.0__initial.model.xml +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/model/1.0__initial.model.xml @@ -37,6 +37,22 @@ + + + + + + + + + + + + + + + + diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/model/1.1.model.xml b/ebean-test/src/test/resources/migrationtest/dbmigration/model/1.1.model.xml index 1c704408c..d811336bb 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/model/1.1.model.xml +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/model/1.1.model.xml @@ -121,6 +121,10 @@ + + + + diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/model/1.2__dropsFor_1.1.model.xml b/ebean-test/src/test/resources/migrationtest/dbmigration/model/1.2__dropsFor_1.1.model.xml index 99fa64365..4a4eb166d 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/model/1.2__dropsFor_1.1.model.xml +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/model/1.2__dropsFor_1.1.model.xml @@ -7,6 +7,10 @@ + + + + diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/mysql/1.0__initial.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/mysql/1.0__initial.sql index f2eb08f85..eb95f6816 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/mysql/1.0__initial.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/mysql/1.0__initial.sql @@ -54,6 +54,28 @@ create table migtest_fk_set_null ( constraint pk_migtest_fk_set_null primary key (id) ); +create table drop_main ( + id integer auto_increment not null, + constraint pk_drop_main primary key (id) +); + +create table drop_main_drop_ref_many ( + drop_main_id integer not null, + drop_ref_many_id integer not null, + constraint pk_drop_main_drop_ref_many primary key (drop_main_id,drop_ref_many_id) +); + +create table drop_ref_many ( + id integer auto_increment not null, + constraint pk_drop_ref_many primary key (id) +); + +create table drop_ref_one ( + id integer auto_increment not null, + parent_id integer, + constraint pk_drop_ref_one primary key (id) +); + create table migtest_e_basic ( id integer auto_increment not null, status varchar(1), @@ -323,6 +345,15 @@ alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id forei create index ix_migtest_fk_set_null_one_id on migtest_fk_set_null (one_id); alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete set null on update restrict; +create index ix_drop_main_drop_ref_many_drop_main on drop_main_drop_ref_many (drop_main_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_main foreign key (drop_main_id) references drop_main (id) on delete restrict on update restrict; + +create index ix_drop_main_drop_ref_many_drop_ref_many on drop_main_drop_ref_many (drop_ref_many_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_ref_many foreign key (drop_ref_many_id) references drop_ref_many (id) on delete restrict on update restrict; + +create index ix_drop_ref_one_parent_id on drop_ref_one (parent_id); +alter table drop_ref_one add constraint fk_drop_ref_one_parent_id foreign key (parent_id) references drop_main (id) on delete restrict on update restrict; + create index ix_migtest_e_basic_eref_id on migtest_e_basic (eref_id); alter table migtest_e_basic add constraint fk_migtest_e_basic_eref_id foreign key (eref_id) references migtest_e_ref (id) on delete restrict on update restrict; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/mysql/1.2__dropsFor_1.1.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/mysql/1.2__dropsFor_1.1.sql index 2c06ee001..a9aee81d2 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/mysql/1.2__dropsFor_1.1.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/mysql/1.2__dropsFor_1.1.sql @@ -25,5 +25,9 @@ create trigger migtest_e_history2_history_del before delete on migtest_e_history insert into migtest_e_history2_history (sys_period_start,sys_period_end,id, test_string, test_string3, new_column) values (OLD.sys_period_start, now(6),OLD.id, OLD.test_string, OLD.test_string3, OLD.new_column); end$$ unlock tables; +drop table if exists drop_main; +drop table if exists drop_main_drop_ref_many; +drop table if exists drop_ref_many; +drop table if exists drop_ref_one; drop table if exists `migtest_QuOtEd`; drop table if exists migtest_e_ref; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/mysql/idx_mysql.migrations b/ebean-test/src/test/resources/migrationtest/dbmigration/mysql/idx_mysql.migrations index adf927e95..8dea2d272 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/mysql/idx_mysql.migrations +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/mysql/idx_mysql.migrations @@ -1,7 +1,7 @@ -1933396282, I__create_procs.sql -1980830787, 1.0__initial.sql +-1156696445, 1.0__initial.sql -92753611, 1.1.sql --1097227916, 1.2__dropsFor_1.1.sql +-70834029, 1.2__dropsFor_1.1.sql 1674664705, 1.3.sql -1282113429, 1.4__dropsFor_1.3.sql 561281075, R__order_views.sql diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/mysql55/1.0__initial.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/mysql55/1.0__initial.sql index b1db29fc1..7e6906ea4 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/mysql55/1.0__initial.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/mysql55/1.0__initial.sql @@ -54,6 +54,28 @@ create table migtest_fk_set_null ( constraint pk_migtest_fk_set_null primary key (id) ); +create table drop_main ( + id integer auto_increment not null, + constraint pk_drop_main primary key (id) +); + +create table drop_main_drop_ref_many ( + drop_main_id integer not null, + drop_ref_many_id integer not null, + constraint pk_drop_main_drop_ref_many primary key (drop_main_id,drop_ref_many_id) +); + +create table drop_ref_many ( + id integer auto_increment not null, + constraint pk_drop_ref_many primary key (id) +); + +create table drop_ref_one ( + id integer auto_increment not null, + parent_id integer, + constraint pk_drop_ref_one primary key (id) +); + create table migtest_e_basic ( id integer auto_increment not null, status varchar(1), @@ -323,6 +345,15 @@ alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id forei create index ix_migtest_fk_set_null_one_id on migtest_fk_set_null (one_id); alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete set null on update restrict; +create index ix_drop_main_drop_ref_many_drop_main on drop_main_drop_ref_many (drop_main_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_main foreign key (drop_main_id) references drop_main (id) on delete restrict on update restrict; + +create index ix_drop_main_drop_ref_many_drop_ref_many on drop_main_drop_ref_many (drop_ref_many_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_ref_many foreign key (drop_ref_many_id) references drop_ref_many (id) on delete restrict on update restrict; + +create index ix_drop_ref_one_parent_id on drop_ref_one (parent_id); +alter table drop_ref_one add constraint fk_drop_ref_one_parent_id foreign key (parent_id) references drop_main (id) on delete restrict on update restrict; + create index ix_migtest_e_basic_eref_id on migtest_e_basic (eref_id); alter table migtest_e_basic add constraint fk_migtest_e_basic_eref_id foreign key (eref_id) references migtest_e_ref (id) on delete restrict on update restrict; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/mysql55/1.2__dropsFor_1.1.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/mysql55/1.2__dropsFor_1.1.sql index 2c06ee001..a9aee81d2 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/mysql55/1.2__dropsFor_1.1.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/mysql55/1.2__dropsFor_1.1.sql @@ -25,5 +25,9 @@ create trigger migtest_e_history2_history_del before delete on migtest_e_history insert into migtest_e_history2_history (sys_period_start,sys_period_end,id, test_string, test_string3, new_column) values (OLD.sys_period_start, now(6),OLD.id, OLD.test_string, OLD.test_string3, OLD.new_column); end$$ unlock tables; +drop table if exists drop_main; +drop table if exists drop_main_drop_ref_many; +drop table if exists drop_ref_many; +drop table if exists drop_ref_one; drop table if exists `migtest_QuOtEd`; drop table if exists migtest_e_ref; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/mysql55/idx_mysql.migrations b/ebean-test/src/test/resources/migrationtest/dbmigration/mysql55/idx_mysql.migrations index bbf93e18d..a613017ea 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/mysql55/idx_mysql.migrations +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/mysql55/idx_mysql.migrations @@ -1,7 +1,7 @@ -1933396282, I__create_procs.sql -369577572, 1.0__initial.sql +-165038024, 1.0__initial.sql -92753611, 1.1.sql --1097227916, 1.2__dropsFor_1.1.sql +-70834029, 1.2__dropsFor_1.1.sql 1674664705, 1.3.sql -1282113429, 1.4__dropsFor_1.3.sql 561281075, R__order_views.sql diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/nuodb/1.0__initial.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/nuodb/1.0__initial.sql index b5d81c5bd..58cfc41bb 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/nuodb/1.0__initial.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/nuodb/1.0__initial.sql @@ -54,6 +54,28 @@ create table migtest_fk_set_null ( constraint pk_migtest_fk_set_null primary key (id) ); +create table drop_main ( + id integer generated by default as identity not null, + constraint pk_drop_main primary key (id) +); + +create table drop_main_drop_ref_many ( + drop_main_id integer not null, + drop_ref_many_id integer not null, + constraint pk_drop_main_drop_ref_many primary key (drop_main_id,drop_ref_many_id) +); + +create table drop_ref_many ( + id integer generated by default as identity not null, + constraint pk_drop_ref_many primary key (id) +); + +create table drop_ref_one ( + id integer generated by default as identity not null, + parent_id integer, + constraint pk_drop_ref_one primary key (id) +); + create table migtest_e_basic ( id integer generated by default as identity not null, status varchar(1), @@ -340,6 +362,15 @@ alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id forei create index ix_migtest_fk_set_null_one_id on migtest_fk_set_null (one_id); alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id); +create index ix_drop_main_drop_ref_many_drop_main on drop_main_drop_ref_many (drop_main_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_main foreign key (drop_main_id) references drop_main (id); + +create index ix_drop_main_drop_ref_many_drop_ref_many on drop_main_drop_ref_many (drop_ref_many_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_ref_many foreign key (drop_ref_many_id) references drop_ref_many (id); + +create index ix_drop_ref_one_parent_id on drop_ref_one (parent_id); +alter table drop_ref_one add constraint fk_drop_ref_one_parent_id foreign key (parent_id) references drop_main (id); + create index ix_migtest_e_basic_eref_id on migtest_e_basic (eref_id); alter table migtest_e_basic add constraint fk_migtest_e_basic_eref_id foreign key (eref_id) references migtest_e_ref (id); diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/nuodb/1.2__dropsFor_1.1.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/nuodb/1.2__dropsFor_1.1.sql index fc0eb25e3..78bd786c6 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/nuodb/1.2__dropsFor_1.1.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/nuodb/1.2__dropsFor_1.1.sql @@ -27,6 +27,13 @@ create or replace trigger migtest_e_history2_history_del for migtest_e_history2 end_trigger; $$ +drop table if exists drop_main; +drop sequence if exists drop_main_seq; +drop table if exists drop_main_drop_ref_many; +drop table if exists drop_ref_many; +drop sequence if exists drop_ref_many_seq; +drop table if exists drop_ref_one; +drop sequence if exists drop_ref_one_seq; drop table if exists "migtest_QuOtEd"; drop table if exists migtest_e_ref; drop sequence if exists migtest_e_ref_seq; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/nuodb/idx_nuodb.migrations b/ebean-test/src/test/resources/migrationtest/dbmigration/nuodb/idx_nuodb.migrations index 1342d6508..d9b95dfb3 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/nuodb/idx_nuodb.migrations +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/nuodb/idx_nuodb.migrations @@ -1,6 +1,6 @@ -390216918, 1.0__initial.sql +-588780599, 1.0__initial.sql -2079708895, 1.1.sql -1530685455, 1.2__dropsFor_1.1.sql +-1061962041, 1.2__dropsFor_1.1.sql 73983167, 1.3.sql -1118858496, 1.4__dropsFor_1.3.sql 561281075, R__order_views.sql diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/oracle/1.0__initial.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/oracle/1.0__initial.sql index 4b2f1f9a5..a97688926 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/oracle/1.0__initial.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/oracle/1.0__initial.sql @@ -54,6 +54,28 @@ create table migtest_fk_set_null ( constraint pk_migtest_fk_set_null primary key (id) ); +create table drop_main ( + id number(10) generated by default as identity not null, + constraint pk_drop_main primary key (id) +); + +create table drop_main_drop_ref_many ( + drop_main_id number(10) not null, + drop_ref_many_id number(10) not null, + constraint pk_drop_main_drop_ref_many primary key (drop_main_id,drop_ref_many_id) +); + +create table drop_ref_many ( + id number(10) generated by default as identity not null, + constraint pk_drop_ref_many primary key (id) +); + +create table drop_ref_one ( + id number(10) generated by default as identity not null, + parent_id number(10), + constraint pk_drop_ref_one primary key (id) +); + create table migtest_e_basic ( id number(10) generated by default as identity not null, status varchar2(1), @@ -194,6 +216,15 @@ alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id forei create index ix_migtest_fk_set_null_one_id on migtest_fk_set_null (one_id); alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete set null; +create index ix_drp_mn_drp_rf_mny_drp_mn on drop_main_drop_ref_many (drop_main_id); +alter table drop_main_drop_ref_many add constraint fk_drp_mn_drp_rf_mny_drp_mn foreign key (drop_main_id) references drop_main (id); + +create index ix_drp_mn_drp_rf_mny_dr_d70vl on drop_main_drop_ref_many (drop_ref_many_id); +alter table drop_main_drop_ref_many add constraint fk_drp_mn_drp_rf_mny_dr_joeslj foreign key (drop_ref_many_id) references drop_ref_many (id); + +create index ix_drop_ref_one_parent_id on drop_ref_one (parent_id); +alter table drop_ref_one add constraint fk_drop_ref_one_parent_id foreign key (parent_id) references drop_main (id); + create index ix_migtest_e_basic_eref_id on migtest_e_basic (eref_id); alter table migtest_e_basic add constraint fk_migtest_e_basic_eref_id foreign key (eref_id) references migtest_e_ref (id); diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/oracle/1.2__dropsFor_1.1.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/oracle/1.2__dropsFor_1.1.sql index e3b0dbb96..649b7ea47 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/oracle/1.2__dropsFor_1.1.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/oracle/1.2__dropsFor_1.1.sql @@ -7,6 +7,40 @@ alter table migtest_e_basic drop column eref_id; alter table migtest_e_history2 drop column obsolete_string1; alter table migtest_e_history2 drop column obsolete_string2; -- apply post alter +drop table drop_main cascade constraints purge; +delimiter $$ +declare + expected_error exception; + pragma exception_init(expected_error, -2289); +begin + execute immediate 'drop sequence drop_main_seq'; +exception + when expected_error then null; +end; +$$; +drop table drop_main_drop_ref_many cascade constraints purge; +drop table drop_ref_many cascade constraints purge; +delimiter $$ +declare + expected_error exception; + pragma exception_init(expected_error, -2289); +begin + execute immediate 'drop sequence drop_ref_many_seq'; +exception + when expected_error then null; +end; +$$; +drop table drop_ref_one cascade constraints purge; +delimiter $$ +declare + expected_error exception; + pragma exception_init(expected_error, -2289); +begin + execute immediate 'drop sequence drop_ref_one_seq'; +exception + when expected_error then null; +end; +$$; drop table "migtest_QuOtEd" cascade constraints purge; drop table migtest_e_ref cascade constraints purge; delimiter $$ diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/oracle/idx_oracle.migrations b/ebean-test/src/test/resources/migrationtest/dbmigration/oracle/idx_oracle.migrations index 160b8b601..9aa86156d 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/oracle/idx_oracle.migrations +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/oracle/idx_oracle.migrations @@ -1,6 +1,6 @@ -1757923548, 1.0__initial.sql +-126940583, 1.0__initial.sql 740264587, 1.1.sql -930172034, 1.2__dropsFor_1.1.sql +1164021503, 1.2__dropsFor_1.1.sql -1896525025, 1.3.sql 2037899598, 1.4__dropsFor_1.3.sql 1357801733, R__oracle_only_views.sql diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/oracle11/1.0__initial.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/oracle11/1.0__initial.sql index bfbc238c4..3d4518972 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/oracle11/1.0__initial.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/oracle11/1.0__initial.sql @@ -62,6 +62,31 @@ create table migtest_fk_set_null ( ); create sequence migtest_fk_set_null_seq; +create table drop_main ( + id number(10) not null, + constraint pk_drop_main primary key (id) +); +create sequence drop_main_seq; + +create table drop_main_drop_ref_many ( + drop_main_id number(10) not null, + drop_ref_many_id number(10) not null, + constraint pk_drop_main_drop_ref_many primary key (drop_main_id,drop_ref_many_id) +); + +create table drop_ref_many ( + id number(10) not null, + constraint pk_drop_ref_many primary key (id) +); +create sequence drop_ref_many_seq; + +create table drop_ref_one ( + id number(10) not null, + parent_id number(10), + constraint pk_drop_ref_one primary key (id) +); +create sequence drop_ref_one_seq; + create table migtest_e_basic ( id number(10) not null, status varchar2(1), @@ -216,6 +241,15 @@ alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id forei create index ix_migtest_fk_set_null_one_id on migtest_fk_set_null (one_id); alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete set null; +create index ix_drp_mn_drp_rf_mny_drp_mn on drop_main_drop_ref_many (drop_main_id); +alter table drop_main_drop_ref_many add constraint fk_drp_mn_drp_rf_mny_drp_mn foreign key (drop_main_id) references drop_main (id); + +create index ix_drp_mn_drp_rf_mny_dr_d70vl on drop_main_drop_ref_many (drop_ref_many_id); +alter table drop_main_drop_ref_many add constraint fk_drp_mn_drp_rf_mny_dr_joeslj foreign key (drop_ref_many_id) references drop_ref_many (id); + +create index ix_drop_ref_one_parent_id on drop_ref_one (parent_id); +alter table drop_ref_one add constraint fk_drop_ref_one_parent_id foreign key (parent_id) references drop_main (id); + create index ix_migtest_e_basic_eref_id on migtest_e_basic (eref_id); alter table migtest_e_basic add constraint fk_migtest_e_basic_eref_id foreign key (eref_id) references migtest_e_ref (id); diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/oracle11/1.2__dropsFor_1.1.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/oracle11/1.2__dropsFor_1.1.sql index e3b0dbb96..649b7ea47 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/oracle11/1.2__dropsFor_1.1.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/oracle11/1.2__dropsFor_1.1.sql @@ -7,6 +7,40 @@ alter table migtest_e_basic drop column eref_id; alter table migtest_e_history2 drop column obsolete_string1; alter table migtest_e_history2 drop column obsolete_string2; -- apply post alter +drop table drop_main cascade constraints purge; +delimiter $$ +declare + expected_error exception; + pragma exception_init(expected_error, -2289); +begin + execute immediate 'drop sequence drop_main_seq'; +exception + when expected_error then null; +end; +$$; +drop table drop_main_drop_ref_many cascade constraints purge; +drop table drop_ref_many cascade constraints purge; +delimiter $$ +declare + expected_error exception; + pragma exception_init(expected_error, -2289); +begin + execute immediate 'drop sequence drop_ref_many_seq'; +exception + when expected_error then null; +end; +$$; +drop table drop_ref_one cascade constraints purge; +delimiter $$ +declare + expected_error exception; + pragma exception_init(expected_error, -2289); +begin + execute immediate 'drop sequence drop_ref_one_seq'; +exception + when expected_error then null; +end; +$$; drop table "migtest_QuOtEd" cascade constraints purge; drop table migtest_e_ref cascade constraints purge; delimiter $$ diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/oracle11/idx_oracle.migrations b/ebean-test/src/test/resources/migrationtest/dbmigration/oracle11/idx_oracle.migrations index 3095da37b..afc997f54 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/oracle11/idx_oracle.migrations +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/oracle11/idx_oracle.migrations @@ -1,6 +1,6 @@ --1422254768, 1.0__initial.sql +21261569, 1.0__initial.sql -123689547, 1.1.sql -930172034, 1.2__dropsFor_1.1.sql +1164021503, 1.2__dropsFor_1.1.sql 1967473644, 1.3.sql 2037899598, 1.4__dropsFor_1.3.sql 1357801733, R__oracle_only_views.sql diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/postgres/1.0__initial.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/postgres/1.0__initial.sql index 766e79bca..5ad40246f 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/postgres/1.0__initial.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/postgres/1.0__initial.sql @@ -54,6 +54,28 @@ create table migtest_fk_set_null ( constraint pk_migtest_fk_set_null primary key (id) ); +create table drop_main ( + id integer generated by default as identity not null, + constraint pk_drop_main primary key (id) +); + +create table drop_main_drop_ref_many ( + drop_main_id integer not null, + drop_ref_many_id integer not null, + constraint pk_drop_main_drop_ref_many primary key (drop_main_id,drop_ref_many_id) +); + +create table drop_ref_many ( + id integer generated by default as identity not null, + constraint pk_drop_ref_many primary key (id) +); + +create table drop_ref_one ( + id integer generated by default as identity not null, + parent_id integer, + constraint pk_drop_ref_one primary key (id) +); + create table migtest_e_basic ( id integer generated by default as identity not null, description_file bytea, @@ -352,6 +374,15 @@ alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id forei create index ix_migtest_fk_set_null_one_id on migtest_fk_set_null (one_id); alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete set null on update restrict; +create index ix_drop_main_drop_ref_many_drop_main on drop_main_drop_ref_many (drop_main_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_main foreign key (drop_main_id) references drop_main (id) on delete restrict on update restrict; + +create index ix_drop_main_drop_ref_many_drop_ref_many on drop_main_drop_ref_many (drop_ref_many_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_ref_many foreign key (drop_ref_many_id) references drop_ref_many (id) on delete restrict on update restrict; + +create index ix_drop_ref_one_parent_id on drop_ref_one (parent_id); +alter table drop_ref_one add constraint fk_drop_ref_one_parent_id foreign key (parent_id) references drop_main (id) on delete restrict on update restrict; + create index ix_migtest_e_basic_eref_id on migtest_e_basic (eref_id); alter table migtest_e_basic add constraint fk_migtest_e_basic_eref_id foreign key (eref_id) references migtest_e_ref (id) on delete restrict on update restrict; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/postgres/1.2__dropsFor_1.1.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/postgres/1.2__dropsFor_1.1.sql index 7e6c96228..034b33908 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/postgres/1.2__dropsFor_1.1.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/postgres/1.2__dropsFor_1.1.sql @@ -37,6 +37,13 @@ create trigger migtest_e_history2_history_upd before update or delete on migtest_e_history2 for each row execute procedure migtest_e_history2_history_version(); +drop table if exists drop_main cascade; +drop sequence if exists drop_main_seq; +drop table if exists drop_main_drop_ref_many cascade; +drop table if exists drop_ref_many cascade; +drop sequence if exists drop_ref_many_seq; +drop table if exists drop_ref_one cascade; +drop sequence if exists drop_ref_one_seq; drop table if exists "migtest_QuOtEd" cascade; drop table if exists migtest_e_ref cascade; drop sequence if exists migtest_e_ref_seq; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/postgres/idx_postgres.migrations b/ebean-test/src/test/resources/migrationtest/dbmigration/postgres/idx_postgres.migrations index 06ebb0b61..c5a5a50ca 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/postgres/idx_postgres.migrations +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/postgres/idx_postgres.migrations @@ -1,6 +1,6 @@ --769462329, 1.0__initial.sql +-73982981, 1.0__initial.sql 409812555, 1.1.sql --261111052, 1.2__dropsFor_1.1.sql +274267648, 1.2__dropsFor_1.1.sql 1214144459, 1.3.sql -709144111, 1.4__dropsFor_1.3.sql 783227075, R__multi_comments.sql diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/postgres9/1.0__initial.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/postgres9/1.0__initial.sql index 21fa13691..0f344cdc2 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/postgres9/1.0__initial.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/postgres9/1.0__initial.sql @@ -54,6 +54,28 @@ create table migtest_fk_set_null ( constraint pk_migtest_fk_set_null primary key (id) ); +create table drop_main ( + id serial not null, + constraint pk_drop_main primary key (id) +); + +create table drop_main_drop_ref_many ( + drop_main_id integer not null, + drop_ref_many_id integer not null, + constraint pk_drop_main_drop_ref_many primary key (drop_main_id,drop_ref_many_id) +); + +create table drop_ref_many ( + id serial not null, + constraint pk_drop_ref_many primary key (id) +); + +create table drop_ref_one ( + id serial not null, + parent_id integer, + constraint pk_drop_ref_one primary key (id) +); + create table migtest_e_basic ( id serial not null, description_file bytea, @@ -352,6 +374,15 @@ alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id forei create index ix_migtest_fk_set_null_one_id on migtest_fk_set_null (one_id); alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete set null on update restrict; +create index ix_drop_main_drop_ref_many_drop_main on drop_main_drop_ref_many (drop_main_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_main foreign key (drop_main_id) references drop_main (id) on delete restrict on update restrict; + +create index ix_drop_main_drop_ref_many_drop_ref_many on drop_main_drop_ref_many (drop_ref_many_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_ref_many foreign key (drop_ref_many_id) references drop_ref_many (id) on delete restrict on update restrict; + +create index ix_drop_ref_one_parent_id on drop_ref_one (parent_id); +alter table drop_ref_one add constraint fk_drop_ref_one_parent_id foreign key (parent_id) references drop_main (id) on delete restrict on update restrict; + create index ix_migtest_e_basic_eref_id on migtest_e_basic (eref_id); alter table migtest_e_basic add constraint fk_migtest_e_basic_eref_id foreign key (eref_id) references migtest_e_ref (id) on delete restrict on update restrict; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/postgres9/1.2__dropsFor_1.1.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/postgres9/1.2__dropsFor_1.1.sql index 7e6c96228..034b33908 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/postgres9/1.2__dropsFor_1.1.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/postgres9/1.2__dropsFor_1.1.sql @@ -37,6 +37,13 @@ create trigger migtest_e_history2_history_upd before update or delete on migtest_e_history2 for each row execute procedure migtest_e_history2_history_version(); +drop table if exists drop_main cascade; +drop sequence if exists drop_main_seq; +drop table if exists drop_main_drop_ref_many cascade; +drop table if exists drop_ref_many cascade; +drop sequence if exists drop_ref_many_seq; +drop table if exists drop_ref_one cascade; +drop sequence if exists drop_ref_one_seq; drop table if exists "migtest_QuOtEd" cascade; drop table if exists migtest_e_ref cascade; drop sequence if exists migtest_e_ref_seq; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/postgres9/idx_postgres.migrations b/ebean-test/src/test/resources/migrationtest/dbmigration/postgres9/idx_postgres.migrations index 5136723e3..384762b64 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/postgres9/idx_postgres.migrations +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/postgres9/idx_postgres.migrations @@ -1,6 +1,6 @@ --309942302, 1.0__initial.sql +-1033742102, 1.0__initial.sql 2116598611, 1.1.sql --261111052, 1.2__dropsFor_1.1.sql +274267648, 1.2__dropsFor_1.1.sql -388526579, 1.3.sql -709144111, 1.4__dropsFor_1.3.sql 783227075, R__multi_comments.sql diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/sqlanywhere/1.0__initial.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/sqlanywhere/1.0__initial.sql index 3d79a3500..3d95c0561 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/sqlanywhere/1.0__initial.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/sqlanywhere/1.0__initial.sql @@ -54,6 +54,28 @@ create table migtest_fk_set_null ( constraint pk_migtest_fk_set_null primary key (id) ); +create table drop_main ( + id integer auto_increment not null, + constraint pk_drop_main primary key (id) +); + +create table drop_main_drop_ref_many ( + drop_main_id integer not null, + drop_ref_many_id integer not null, + constraint pk_drop_main_drop_ref_many primary key (drop_main_id,drop_ref_many_id) +); + +create table drop_ref_many ( + id integer auto_increment not null, + constraint pk_drop_ref_many primary key (id) +); + +create table drop_ref_one ( + id integer auto_increment not null, + parent_id integer, + constraint pk_drop_ref_one primary key (id) +); + create table migtest_e_basic ( id integer auto_increment not null, status varchar(1), @@ -194,6 +216,15 @@ alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id forei create index ix_migtest_fk_set_null_one_id on migtest_fk_set_null (one_id); alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete set null on update restrict; +create index ix_drop_main_drop_ref_many_drop_main on drop_main_drop_ref_many (drop_main_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_main foreign key (drop_main_id) references drop_main (id) on delete restrict on update restrict; + +create index ix_drop_main_drop_ref_many_drop_ref_many on drop_main_drop_ref_many (drop_ref_many_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_ref_many foreign key (drop_ref_many_id) references drop_ref_many (id) on delete restrict on update restrict; + +create index ix_drop_ref_one_parent_id on drop_ref_one (parent_id); +alter table drop_ref_one add constraint fk_drop_ref_one_parent_id foreign key (parent_id) references drop_main (id) on delete restrict on update restrict; + create index ix_migtest_e_basic_eref_id on migtest_e_basic (eref_id); alter table migtest_e_basic add constraint fk_migtest_e_basic_eref_id foreign key (eref_id) references migtest_e_ref (id) on delete restrict on update restrict; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/sqlanywhere/1.2__dropsFor_1.1.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/sqlanywhere/1.2__dropsFor_1.1.sql index cb6860e63..5934a713a 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/sqlanywhere/1.2__dropsFor_1.1.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/sqlanywhere/1.2__dropsFor_1.1.sql @@ -7,5 +7,9 @@ alter table migtest_e_basic drop column eref_id; alter table migtest_e_history2 drop column obsolete_string1; alter table migtest_e_history2 drop column obsolete_string2; -- apply post alter +drop table if exists drop_main; +drop table if exists drop_main_drop_ref_many; +drop table if exists drop_ref_many; +drop table if exists drop_ref_one; drop table if exists "migtest_QuOtEd"; drop table if exists migtest_e_ref; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/sqlanywhere/idx_sqlanywhere.migrations b/ebean-test/src/test/resources/migrationtest/dbmigration/sqlanywhere/idx_sqlanywhere.migrations index 5c3f07503..8df0768e0 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/sqlanywhere/idx_sqlanywhere.migrations +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/sqlanywhere/idx_sqlanywhere.migrations @@ -1,6 +1,6 @@ --951189503, 1.0__initial.sql +1278110701, 1.0__initial.sql 128425002, 1.1.sql -688811494, 1.2__dropsFor_1.1.sql +-875723380, 1.2__dropsFor_1.1.sql -519291959, 1.3.sql 255653518, 1.4__dropsFor_1.3.sql diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/sqlite/1.0__initial.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/sqlite/1.0__initial.sql index bfd05a961..dbb047e57 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/sqlite/1.0__initial.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/sqlite/1.0__initial.sql @@ -56,6 +56,31 @@ create table migtest_fk_set_null ( foreign key (one_id) references migtest_fk_one (id) on delete set null on update restrict ); +create table drop_main ( + id integer not null, + constraint pk_drop_main primary key (id) +); + +create table drop_main_drop_ref_many ( + drop_main_id integer not null, + drop_ref_many_id integer not null, + constraint pk_drop_main_drop_ref_many primary key (drop_main_id,drop_ref_many_id), + foreign key (drop_main_id) references drop_main (id) on delete restrict on update restrict, + foreign key (drop_ref_many_id) references drop_ref_many (id) on delete restrict on update restrict +); + +create table drop_ref_many ( + id integer not null, + constraint pk_drop_ref_many primary key (id) +); + +create table drop_ref_one ( + id integer not null, + parent_id integer, + constraint pk_drop_ref_one primary key (id), + foreign key (parent_id) references drop_main (id) on delete restrict on update restrict +); + create table migtest_e_basic ( id integer not null, status varchar(1), diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/sqlite/1.2__dropsFor_1.1.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/sqlite/1.2__dropsFor_1.1.sql index cb6860e63..5934a713a 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/sqlite/1.2__dropsFor_1.1.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/sqlite/1.2__dropsFor_1.1.sql @@ -7,5 +7,9 @@ alter table migtest_e_basic drop column eref_id; alter table migtest_e_history2 drop column obsolete_string1; alter table migtest_e_history2 drop column obsolete_string2; -- apply post alter +drop table if exists drop_main; +drop table if exists drop_main_drop_ref_many; +drop table if exists drop_ref_many; +drop table if exists drop_ref_one; drop table if exists "migtest_QuOtEd"; drop table if exists migtest_e_ref; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/sqlite/idx_sqlite.migrations b/ebean-test/src/test/resources/migrationtest/dbmigration/sqlite/idx_sqlite.migrations index 6fa5eb1cb..0c92d9086 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/sqlite/idx_sqlite.migrations +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/sqlite/idx_sqlite.migrations @@ -1,6 +1,6 @@ --1527127682, 1.0__initial.sql +238997470, 1.0__initial.sql 1828386122, 1.1.sql -688811494, 1.2__dropsFor_1.1.sql +-875723380, 1.2__dropsFor_1.1.sql 536935117, 1.3.sql 255653518, 1.4__dropsFor_1.3.sql 2034589659, R__order_views_sqlite.sql diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/sqlserver16/1.0__initial.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/sqlserver16/1.0__initial.sql index b57f44881..d00821f76 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/sqlserver16/1.0__initial.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/sqlserver16/1.0__initial.sql @@ -54,6 +54,28 @@ create table migtest_fk_set_null ( constraint pk_migtest_fk_set_null primary key (id) ); +create table drop_main ( + id integer identity(1,1) not null, + constraint pk_drop_main primary key (id) +); + +create table drop_main_drop_ref_many ( + drop_main_id integer not null, + drop_ref_many_id integer not null, + constraint pk_drop_main_drop_ref_many primary key (drop_main_id,drop_ref_many_id) +); + +create table drop_ref_many ( + id integer identity(1,1) not null, + constraint pk_drop_ref_many primary key (id) +); + +create table drop_ref_one ( + id integer identity(1,1) not null, + parent_id integer, + constraint pk_drop_ref_one primary key (id) +); + create table migtest_e_basic ( id integer identity(1,1) not null, status varchar(1), @@ -224,6 +246,15 @@ alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id forei create index ix_migtest_fk_set_null_one_id on migtest_fk_set_null (one_id); alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete set null; +create index ix_drop_main_drop_ref_many_drop_main on drop_main_drop_ref_many (drop_main_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_main foreign key (drop_main_id) references drop_main (id); + +create index ix_drop_main_drop_ref_many_drop_ref_many on drop_main_drop_ref_many (drop_ref_many_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_ref_many foreign key (drop_ref_many_id) references drop_ref_many (id); + +create index ix_drop_ref_one_parent_id on drop_ref_one (parent_id); +alter table drop_ref_one add constraint fk_drop_ref_one_parent_id foreign key (parent_id) references drop_main (id); + create index ix_migtest_e_basic_eref_id on migtest_e_basic (eref_id); alter table migtest_e_basic add constraint fk_migtest_e_basic_eref_id foreign key (eref_id) references migtest_e_ref (id); diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/sqlserver16/1.2__dropsFor_1.1.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/sqlserver16/1.2__dropsFor_1.1.sql index e37f34d7c..12dd0f8e0 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/sqlserver16/1.2__dropsFor_1.1.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/sqlserver16/1.2__dropsFor_1.1.sql @@ -11,6 +11,13 @@ EXEC usp_ebean_drop_column migtest_e_basic, eref_id; EXEC usp_ebean_drop_column migtest_e_history2, obsolete_string1; EXEC usp_ebean_drop_column migtest_e_history2, obsolete_string2; -- apply post alter +IF OBJECT_ID('drop_main', 'U') IS NOT NULL drop table drop_main; +IF OBJECT_ID('drop_main_seq', 'SO') IS NOT NULL drop sequence drop_main_seq; +IF OBJECT_ID('drop_main_drop_ref_many', 'U') IS NOT NULL drop table drop_main_drop_ref_many; +IF OBJECT_ID('drop_ref_many', 'U') IS NOT NULL drop table drop_ref_many; +IF OBJECT_ID('drop_ref_many_seq', 'SO') IS NOT NULL drop sequence drop_ref_many_seq; +IF OBJECT_ID('drop_ref_one', 'U') IS NOT NULL drop table drop_ref_one; +IF OBJECT_ID('drop_ref_one_seq', 'SO') IS NOT NULL drop sequence drop_ref_one_seq; IF OBJECT_ID('"migtest_QuOtEd"', 'U') IS NOT NULL drop table "migtest_QuOtEd"; IF OBJECT_ID('migtest_e_ref', 'U') IS NOT NULL drop table migtest_e_ref; IF OBJECT_ID('migtest_e_ref_seq', 'SO') IS NOT NULL drop sequence migtest_e_ref_seq; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/sqlserver16/idx_sqlserver.migrations b/ebean-test/src/test/resources/migrationtest/dbmigration/sqlserver16/idx_sqlserver.migrations index fb9b56a17..e23bfe85f 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/sqlserver16/idx_sqlserver.migrations +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/sqlserver16/idx_sqlserver.migrations @@ -1,7 +1,7 @@ 891357544, I__create_procs.sql -380683504, 1.0__initial.sql +-1556604899, 1.0__initial.sql 1291465909, 1.1.sql --1431095657, 1.2__dropsFor_1.1.sql +-599071889, 1.2__dropsFor_1.1.sql 1335479744, 1.3.sql -628940135, 1.4__dropsFor_1.3.sql 1607822082, R__order_views_mssql.sql diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/sqlserver17/1.0__initial.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/sqlserver17/1.0__initial.sql index e241e2ea6..de2ce1a93 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/sqlserver17/1.0__initial.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/sqlserver17/1.0__initial.sql @@ -62,6 +62,31 @@ create table migtest_fk_set_null ( ); create sequence migtest_fk_set_null_seq as bigint start with 1; +create table drop_main ( + id integer not null, + constraint pk_drop_main primary key (id) +); +create sequence drop_main_seq as bigint start with 1; + +create table drop_main_drop_ref_many ( + drop_main_id integer not null, + drop_ref_many_id integer not null, + constraint pk_drop_main_drop_ref_many primary key (drop_main_id,drop_ref_many_id) +); + +create table drop_ref_many ( + id integer not null, + constraint pk_drop_ref_many primary key (id) +); +create sequence drop_ref_many_seq as bigint start with 1; + +create table drop_ref_one ( + id integer not null, + parent_id integer, + constraint pk_drop_ref_one primary key (id) +); +create sequence drop_ref_one_seq as bigint start with 1; + create table migtest_e_basic ( id integer not null, status nvarchar(1), @@ -246,6 +271,15 @@ alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id forei create index ix_migtest_fk_set_null_one_id on migtest_fk_set_null (one_id); alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete set null; +create index ix_drop_main_drop_ref_many_drop_main on drop_main_drop_ref_many (drop_main_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_main foreign key (drop_main_id) references drop_main (id); + +create index ix_drop_main_drop_ref_many_drop_ref_many on drop_main_drop_ref_many (drop_ref_many_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_ref_many foreign key (drop_ref_many_id) references drop_ref_many (id); + +create index ix_drop_ref_one_parent_id on drop_ref_one (parent_id); +alter table drop_ref_one add constraint fk_drop_ref_one_parent_id foreign key (parent_id) references drop_main (id); + create index ix_migtest_e_basic_eref_id on migtest_e_basic (eref_id); alter table migtest_e_basic add constraint fk_migtest_e_basic_eref_id foreign key (eref_id) references migtest_e_ref (id); diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/sqlserver17/1.2__dropsFor_1.1.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/sqlserver17/1.2__dropsFor_1.1.sql index e37f34d7c..12dd0f8e0 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/sqlserver17/1.2__dropsFor_1.1.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/sqlserver17/1.2__dropsFor_1.1.sql @@ -11,6 +11,13 @@ EXEC usp_ebean_drop_column migtest_e_basic, eref_id; EXEC usp_ebean_drop_column migtest_e_history2, obsolete_string1; EXEC usp_ebean_drop_column migtest_e_history2, obsolete_string2; -- apply post alter +IF OBJECT_ID('drop_main', 'U') IS NOT NULL drop table drop_main; +IF OBJECT_ID('drop_main_seq', 'SO') IS NOT NULL drop sequence drop_main_seq; +IF OBJECT_ID('drop_main_drop_ref_many', 'U') IS NOT NULL drop table drop_main_drop_ref_many; +IF OBJECT_ID('drop_ref_many', 'U') IS NOT NULL drop table drop_ref_many; +IF OBJECT_ID('drop_ref_many_seq', 'SO') IS NOT NULL drop sequence drop_ref_many_seq; +IF OBJECT_ID('drop_ref_one', 'U') IS NOT NULL drop table drop_ref_one; +IF OBJECT_ID('drop_ref_one_seq', 'SO') IS NOT NULL drop sequence drop_ref_one_seq; IF OBJECT_ID('"migtest_QuOtEd"', 'U') IS NOT NULL drop table "migtest_QuOtEd"; IF OBJECT_ID('migtest_e_ref', 'U') IS NOT NULL drop table migtest_e_ref; IF OBJECT_ID('migtest_e_ref_seq', 'SO') IS NOT NULL drop sequence migtest_e_ref_seq; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/sqlserver17/idx_sqlserver.migrations b/ebean-test/src/test/resources/migrationtest/dbmigration/sqlserver17/idx_sqlserver.migrations index edff6a17e..78d268229 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/sqlserver17/idx_sqlserver.migrations +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/sqlserver17/idx_sqlserver.migrations @@ -1,7 +1,7 @@ 891357544, I__create_procs.sql -542129917, 1.0__initial.sql +1994995811, 1.0__initial.sql 837691787, 1.1.sql --1431095657, 1.2__dropsFor_1.1.sql +-599071889, 1.2__dropsFor_1.1.sql -545642423, 1.3.sql -628940135, 1.4__dropsFor_1.3.sql 1607822082, R__order_views_mssql.sql diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/yugabyte/1.0__initial.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/yugabyte/1.0__initial.sql index c39acd1ae..16c3fc75d 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/yugabyte/1.0__initial.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/yugabyte/1.0__initial.sql @@ -54,6 +54,28 @@ create table migtest_fk_set_null ( constraint pk_migtest_fk_set_null primary key (id) ); +create table drop_main ( + id integer generated by default as identity not null, + constraint pk_drop_main primary key (id) +); + +create table drop_main_drop_ref_many ( + drop_main_id integer not null, + drop_ref_many_id integer not null, + constraint pk_drop_main_drop_ref_many primary key (drop_main_id,drop_ref_many_id) +); + +create table drop_ref_many ( + id integer generated by default as identity not null, + constraint pk_drop_ref_many primary key (id) +); + +create table drop_ref_one ( + id integer generated by default as identity not null, + parent_id integer, + constraint pk_drop_ref_one primary key (id) +); + create table migtest_e_basic ( id integer generated by default as identity not null, status varchar(1), @@ -383,6 +405,15 @@ alter table migtest_fk_cascade add constraint fk_migtest_fk_cascade_one_id forei create index ix_migtest_fk_set_null_one_id on migtest_fk_set_null (one_id); alter table migtest_fk_set_null add constraint fk_migtest_fk_set_null_one_id foreign key (one_id) references migtest_fk_one (id) on delete set null on update restrict; +create index ix_drop_main_drop_ref_many_drop_main on drop_main_drop_ref_many (drop_main_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_main foreign key (drop_main_id) references drop_main (id) on delete restrict on update restrict; + +create index ix_drop_main_drop_ref_many_drop_ref_many on drop_main_drop_ref_many (drop_ref_many_id); +alter table drop_main_drop_ref_many add constraint fk_drop_main_drop_ref_many_drop_ref_many foreign key (drop_ref_many_id) references drop_ref_many (id) on delete restrict on update restrict; + +create index ix_drop_ref_one_parent_id on drop_ref_one (parent_id); +alter table drop_ref_one add constraint fk_drop_ref_one_parent_id foreign key (parent_id) references drop_main (id) on delete restrict on update restrict; + create index ix_migtest_e_basic_eref_id on migtest_e_basic (eref_id); alter table migtest_e_basic add constraint fk_migtest_e_basic_eref_id foreign key (eref_id) references migtest_e_ref (id) on delete restrict on update restrict; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/yugabyte/1.2__dropsFor_1.1.sql b/ebean-test/src/test/resources/migrationtest/dbmigration/yugabyte/1.2__dropsFor_1.1.sql index 7e6c96228..034b33908 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/yugabyte/1.2__dropsFor_1.1.sql +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/yugabyte/1.2__dropsFor_1.1.sql @@ -37,6 +37,13 @@ create trigger migtest_e_history2_history_upd before update or delete on migtest_e_history2 for each row execute procedure migtest_e_history2_history_version(); +drop table if exists drop_main cascade; +drop sequence if exists drop_main_seq; +drop table if exists drop_main_drop_ref_many cascade; +drop table if exists drop_ref_many cascade; +drop sequence if exists drop_ref_many_seq; +drop table if exists drop_ref_one cascade; +drop sequence if exists drop_ref_one_seq; drop table if exists "migtest_QuOtEd" cascade; drop table if exists migtest_e_ref cascade; drop sequence if exists migtest_e_ref_seq; diff --git a/ebean-test/src/test/resources/migrationtest/dbmigration/yugabyte/idx_yugabyte.migrations b/ebean-test/src/test/resources/migrationtest/dbmigration/yugabyte/idx_yugabyte.migrations index dd232e9a8..f27930cbe 100644 --- a/ebean-test/src/test/resources/migrationtest/dbmigration/yugabyte/idx_yugabyte.migrations +++ b/ebean-test/src/test/resources/migrationtest/dbmigration/yugabyte/idx_yugabyte.migrations @@ -1,6 +1,6 @@ --1409672039, 1.0__initial.sql +113365976, 1.0__initial.sql 380200367, 1.1.sql --261111052, 1.2__dropsFor_1.1.sql +274267648, 1.2__dropsFor_1.1.sql -2084806674, 1.3.sql -709144111, 1.4__dropsFor_1.3.sql 561281075, R__order_views.sql