From 53f1da32bea9e9695de3520e7705aa169140cdb9 Mon Sep 17 00:00:00 2001 From: Roland Praml Date: Fri, 12 Jul 2019 14:21:45 +0200 Subject: [PATCH 1/5] Add testcase for @DbForeignKey(noconstraint = true) --- .../org/tests/lazyforeignkeys/MainEntity.java | 41 ++++++++++++++ .../lazyforeignkeys/MainEntityRelation.java | 46 ++++++++++++++++ .../lazyforeignkeys/TestLazyForeignKeys.java | 53 +++++++++++++++++++ .../tests/lazyforeignkeys/ViewMainEntity.java | 42 +++++++++++++++ .../ViewMainEntityRelation.java | 47 ++++++++++++++++ .../migrationtest/h2/R__main_entity_views.sql | 8 +++ src/test/resources/extra-ddl.xml | 14 ++++- 7 files changed, 250 insertions(+), 1 deletion(-) create mode 100644 src/test/java/org/tests/lazyforeignkeys/MainEntity.java create mode 100644 src/test/java/org/tests/lazyforeignkeys/MainEntityRelation.java create mode 100644 src/test/java/org/tests/lazyforeignkeys/TestLazyForeignKeys.java create mode 100644 src/test/java/org/tests/lazyforeignkeys/ViewMainEntity.java create mode 100644 src/test/java/org/tests/lazyforeignkeys/ViewMainEntityRelation.java create mode 100644 src/test/resources/dbmigration/migrationtest/h2/R__main_entity_views.sql diff --git a/src/test/java/org/tests/lazyforeignkeys/MainEntity.java b/src/test/java/org/tests/lazyforeignkeys/MainEntity.java new file mode 100644 index 000000000..8d76a0a84 --- /dev/null +++ b/src/test/java/org/tests/lazyforeignkeys/MainEntity.java @@ -0,0 +1,41 @@ +package org.tests.lazyforeignkeys; + +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.Table; + +@Entity +@Table(name = "main_entity") +public class MainEntity { + + @Id + private String id; + + private String attr1; + + private String attr2; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getAttr1() { + return attr1; + } + + public void setAttr1(String attr1) { + this.attr1 = attr1; + } + + public String getAttr2() { + return attr2; + } + + public void setAttr2(String attr2) { + this.attr2 = attr2; + } +} diff --git a/src/test/java/org/tests/lazyforeignkeys/MainEntityRelation.java b/src/test/java/org/tests/lazyforeignkeys/MainEntityRelation.java new file mode 100644 index 000000000..06554932a --- /dev/null +++ b/src/test/java/org/tests/lazyforeignkeys/MainEntityRelation.java @@ -0,0 +1,46 @@ +package org.tests.lazyforeignkeys; + +import java.util.UUID; + +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.Table; + + +@Entity +@Table(name = "main_entity_relation") +public class MainEntityRelation { + + @Id + private UUID id; + + private String id1; + + private String id2; + + private String attr1; + + public String getId1() { + return id1; + } + + public void setId1(String id1) { + this.id1 = id1; + } + + public String getId2() { + return id2; + } + + public void setId2(String id2) { + this.id2 = id2; + } + + public String getAttr1() { + return attr1; + } + + public void setAttr1(String attr1) { + this.attr1 = attr1; + } +} diff --git a/src/test/java/org/tests/lazyforeignkeys/TestLazyForeignKeys.java b/src/test/java/org/tests/lazyforeignkeys/TestLazyForeignKeys.java new file mode 100644 index 000000000..bb249ce9d --- /dev/null +++ b/src/test/java/org/tests/lazyforeignkeys/TestLazyForeignKeys.java @@ -0,0 +1,53 @@ +package org.tests.lazyforeignkeys; + +import static org.junit.Assert.assertEquals; +import static org.junit.Assert.assertNull; + +import java.util.List; + +import org.junit.Test; + +import io.ebean.BaseTestCase; +import io.ebean.DB; +import io.ebean.Ebean; +import io.ebean.Query; +import io.ebean.text.PathProperties; + +public class TestLazyForeignKeys extends BaseTestCase { + + @Test + public void test() { + MainEntity ent1 = new MainEntity(); + ent1.setId("ent1"); + ent1.setAttr1("attr1"); + DB.save(ent1); + + MainEntityRelation rel1 = new MainEntityRelation(); + rel1.setId1("ent1"); + rel1.setId2("ent2"); + DB.save(rel1); + + ViewMainEntityRelation vwRel1 = DB.find(ViewMainEntityRelation.class).findOne(); + + assertEquals("ent1", vwRel1.getEntity1().getId()); + assertEquals("ent2", vwRel1.getEntity2().getId()); + + assertEquals("attr1", vwRel1.getEntity1().getAttr1()); + //assertNull(vwRel1.getEntity2().getAttr1()); + + PathProperties pathProp = new PathProperties(); + pathProp.addToPath(null, "attr1"); + pathProp.addToPath("entity1", "id"); + pathProp.addToPath("entity2", "id"); + + Query query = Ebean.find(ViewMainEntityRelation.class).apply(pathProp); + List list = query.findList(); + assertEquals(1, list.size()); + + assertEquals("ent1", list.get(0).getEntity1().getId()); + assertEquals("ent2", list.get(0).getEntity2().getId()); + + assertEquals("select t0.id, t0.attr1, t0.id1, t0.id2 from vw_main_entity_relation t0", + query.getGeneratedSql()); + } +} diff --git a/src/test/java/org/tests/lazyforeignkeys/ViewMainEntity.java b/src/test/java/org/tests/lazyforeignkeys/ViewMainEntity.java new file mode 100644 index 000000000..66ecd74c9 --- /dev/null +++ b/src/test/java/org/tests/lazyforeignkeys/ViewMainEntity.java @@ -0,0 +1,42 @@ +package org.tests.lazyforeignkeys; + +import javax.persistence.Entity; +import javax.persistence.Id; + +import io.ebean.annotation.View; + +@View(name = "vw_main_entity") +@Entity +public class ViewMainEntity { + + @Id + private String id; + + private String attr1; + + private String attr2; + + public String getId() { + return id; + } + + public void setId(String id) { + this.id = id; + } + + public String getAttr1() { + return attr1; + } + + public void setAttr1(String attr1) { + this.attr1 = attr1; + } + + public String getAttr2() { + return attr2; + } + + public void setAttr2(String attr2) { + this.attr2 = attr2; + } +} diff --git a/src/test/java/org/tests/lazyforeignkeys/ViewMainEntityRelation.java b/src/test/java/org/tests/lazyforeignkeys/ViewMainEntityRelation.java new file mode 100644 index 000000000..050f76623 --- /dev/null +++ b/src/test/java/org/tests/lazyforeignkeys/ViewMainEntityRelation.java @@ -0,0 +1,47 @@ +package org.tests.lazyforeignkeys; + +import java.util.UUID; + +import javax.persistence.Entity; +import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.ManyToOne; + +import io.ebean.annotation.DbForeignKey; +import io.ebean.annotation.View; + +@View(name = "vw_main_entity_relation") +@Entity +public class ViewMainEntityRelation { + + @Id + private UUID id; + + @ManyToOne + @JoinColumn(name = "id1") + @DbForeignKey(noConstraint = true) + private MainEntity entity1; + + @ManyToOne + @JoinColumn(name = "id2") + @DbForeignKey(noConstraint = true) + private MainEntity entity2; + + private String attr1; + + public String getAttr1() { + return attr1; + } + + public void setAttr1(String attr1) { + this.attr1 = attr1; + } + + public MainEntity getEntity1() { + return entity1; + } + + public MainEntity getEntity2() { + return entity2; + } +} diff --git a/src/test/resources/dbmigration/migrationtest/h2/R__main_entity_views.sql b/src/test/resources/dbmigration/migrationtest/h2/R__main_entity_views.sql new file mode 100644 index 000000000..c69bc088d --- /dev/null +++ b/src/test/resources/dbmigration/migrationtest/h2/R__main_entity_views.sql @@ -0,0 +1,8 @@ + + + create or replace view vw_main_entity as + select * from main_entity; + + create or replace view vw_main_entity_relation as + select * from main_entity_relation; + \ No newline at end of file diff --git a/src/test/resources/extra-ddl.xml b/src/test/resources/extra-ddl.xml index aaf69b523..0f152469b 100644 --- a/src/test/resources/extra-ddl.xml +++ b/src/test/resources/extra-ddl.xml @@ -4,8 +4,12 @@ drop view order_agg_vw if exists; + + drop view vw_main_entity if exists; + drop view vw_main_entity_relation if exists; + + - create or replace view order_agg_vw as select d.order_id, sum(d.order_qty * d.unit_price) as order_total, sum(d.ship_qty * d.unit_price) as ship_total @@ -13,6 +17,14 @@ group by d.order_id + + create or replace view vw_main_entity as + select * from main_entity; + + create or replace view vw_main_entity_relation as + select * from main_entity_relation; + + drop view order_agg_vw if exists ; create view order_agg_vw as From 081cb202607ebb1a016f07e3e562b609e820560f Mon Sep 17 00:00:00 2001 From: Roland Praml Date: Fri, 12 Jul 2019 14:14:29 +0200 Subject: [PATCH 2/5] always add main ID property, if no foreign key (=noConstraint) is present (cherry picked from commit ea562151a8e3043df13381abd0d076d592618340) --- .../server/query/SqlTreeBuilder.java | 5 ++ .../org/tests/lazyforeignkeys/MainEntity.java | 16 ++++- .../lazyforeignkeys/TestLazyForeignKeys.java | 63 ++++++++++++++----- 3 files changed, 66 insertions(+), 18 deletions(-) diff --git a/src/main/java/io/ebeaninternal/server/query/SqlTreeBuilder.java b/src/main/java/io/ebeaninternal/server/query/SqlTreeBuilder.java index 7b7530dfd..cfe96a5d8 100644 --- a/src/main/java/io/ebeaninternal/server/query/SqlTreeBuilder.java +++ b/src/main/java/io/ebeaninternal/server/query/SqlTreeBuilder.java @@ -248,10 +248,14 @@ public final class SqlTreeBuilder { List myJoinList = new ArrayList<>(); + List extraProps = new ArrayList<>(); for (STreePropertyAssocOne one : desc.propsOne()) { String propPrefix = SplitName.add(prefix, one.getName()); if (isIncludeBean(propPrefix)) { selectIncludes.add(propPrefix); + if (!one.hasForeignKey()) { + extraProps.add(one); + } buildSelectChain(propPrefix, one, one.target(), myJoinList); } } @@ -273,6 +277,7 @@ public final class SqlTreeBuilder { } addManyWhereJoins(myJoinList); } + extraProps.forEach(props::add); SqlTreeNode selectNode = buildNode(prefix, prop, desc, myJoinList, props); if (joinList != null) { diff --git a/src/test/java/org/tests/lazyforeignkeys/MainEntity.java b/src/test/java/org/tests/lazyforeignkeys/MainEntity.java index 8d76a0a84..ec92722db 100644 --- a/src/test/java/org/tests/lazyforeignkeys/MainEntity.java +++ b/src/test/java/org/tests/lazyforeignkeys/MainEntity.java @@ -4,6 +4,10 @@ import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.Table; +import io.ebean.annotation.Formula; +import io.ebean.annotation.Platform; +import io.ebean.annotation.SoftDelete; + @Entity @Table(name = "main_entity") public class MainEntity { @@ -12,9 +16,15 @@ public class MainEntity { private String id; private String attr1; - + private String attr2; + @SoftDelete + @Formula(select = "${ta}.id is null") + @Formula(select = "CASE WHEN ${ta}.id is null THEN 1 ELSE 0 END", platforms = Platform.SQLSERVER17) + // evaluates to true in a left join if bean has been deleted. + boolean deleted; + public String getId() { return id; } @@ -38,4 +48,8 @@ public class MainEntity { public void setAttr2(String attr2) { this.attr2 = attr2; } + + public boolean isDeleted() { + return deleted; + } } diff --git a/src/test/java/org/tests/lazyforeignkeys/TestLazyForeignKeys.java b/src/test/java/org/tests/lazyforeignkeys/TestLazyForeignKeys.java index bb249ce9d..5d5583903 100644 --- a/src/test/java/org/tests/lazyforeignkeys/TestLazyForeignKeys.java +++ b/src/test/java/org/tests/lazyforeignkeys/TestLazyForeignKeys.java @@ -1,10 +1,13 @@ package org.tests.lazyforeignkeys; -import static org.junit.Assert.assertEquals; -import static org.junit.Assert.assertNull; +import static org.assertj.core.api.Assertions.assertThat; +import static org.junit.Assert.*; import java.util.List; +import org.ebeantest.LoggedSqlCollector; +import org.junit.After; +import org.junit.Before; import org.junit.Test; import io.ebean.BaseTestCase; @@ -15,39 +18,65 @@ import io.ebean.text.PathProperties; public class TestLazyForeignKeys extends BaseTestCase { - @Test - public void test() { + @Before + public void prepare() { MainEntity ent1 = new MainEntity(); ent1.setId("ent1"); ent1.setAttr1("attr1"); DB.save(ent1); - + MainEntityRelation rel1 = new MainEntityRelation(); rel1.setId1("ent1"); rel1.setId2("ent2"); DB.save(rel1); - + } + @After + public void cleanup() { + DB.find(MainEntity.class).delete(); + DB.find(MainEntityRelation.class).delete(); + } + + @Test + public void testFindOne() throws Exception { + // use findOne without select, so lazy loading will occur + LoggedSqlCollector.start(); + ViewMainEntityRelation vwRel1 = DB.find(ViewMainEntityRelation.class).findOne(); - + assertEquals("ent1", vwRel1.getEntity1().getId()); assertEquals("ent2", vwRel1.getEntity2().getId()); - + assertEquals("attr1", vwRel1.getEntity1().getAttr1()); - //assertNull(vwRel1.getEntity2().getAttr1()); - + assertFalse(vwRel1.getEntity1().isDeleted()); + assertTrue(vwRel1.getEntity2().isDeleted()); + + List loggedSql = LoggedSqlCollector.stop(); + assertThat(loggedSql).hasSize(3); + assertThat(loggedSql.get(0)).contains("select t0.id, t0.attr1, t0.id1, t0.id2 from vw_main_entity_relation"); + assertThat(loggedSql.get(1)).contains("select t0.id, t0.attr1, t0.attr2, t0.id is null from main_entity t0"); + assertThat(loggedSql.get(2)).contains("select t0.id, t0.attr1, t0.attr2, t0.id is null from main_entity t0"); + } + @Test + public void testFindListWithSelect() { PathProperties pathProp = new PathProperties(); pathProp.addToPath(null, "attr1"); pathProp.addToPath("entity1", "id"); pathProp.addToPath("entity2", "id"); - + Query query = Ebean.find(ViewMainEntityRelation.class).apply(pathProp); List list = query.findList(); assertEquals(1, list.size()); - - assertEquals("ent1", list.get(0).getEntity1().getId()); - assertEquals("ent2", list.get(0).getEntity2().getId()); - - assertEquals("select t0.id, t0.attr1, t0.id1, t0.id2 from vw_main_entity_relation t0", - query.getGeneratedSql()); + + System.out.println(query.getGeneratedSql()); + assertThat(query.getGeneratedSql()).contains("t0.id, t0.attr1, t0.id1, t0.id2, t1.id, t2.id"); + + ViewMainEntityRelation vwRel1 = list.get(0); + assertEquals("ent1", vwRel1.getEntity1().getId()); + assertEquals("ent2", vwRel1.getEntity2().getId()); + + assertEquals("attr1", vwRel1.getEntity1().getAttr1()); + assertFalse(vwRel1.getEntity1().isDeleted()); + assertTrue(vwRel1.getEntity2().isDeleted()); + } } From 272eae5f22ddf5d0abdafa9b2b754d2cc8db0da4 Mon Sep 17 00:00:00 2001 From: Alexander Wagner Date: Thu, 18 Jul 2019 11:00:32 +0200 Subject: [PATCH 3/5] Do not use @View for Test --- .../lazyforeignkeys/MainEntityRelation.java | 46 +++++++++++------- .../lazyforeignkeys/TestLazyForeignKeys.java | 42 ++++++++++------- .../tests/lazyforeignkeys/ViewMainEntity.java | 42 ----------------- .../ViewMainEntityRelation.java | 47 ------------------- 4 files changed, 52 insertions(+), 125 deletions(-) delete mode 100644 src/test/java/org/tests/lazyforeignkeys/ViewMainEntity.java delete mode 100644 src/test/java/org/tests/lazyforeignkeys/ViewMainEntityRelation.java diff --git a/src/test/java/org/tests/lazyforeignkeys/MainEntityRelation.java b/src/test/java/org/tests/lazyforeignkeys/MainEntityRelation.java index 06554932a..20c6ed4e9 100644 --- a/src/test/java/org/tests/lazyforeignkeys/MainEntityRelation.java +++ b/src/test/java/org/tests/lazyforeignkeys/MainEntityRelation.java @@ -4,8 +4,12 @@ import java.util.UUID; import javax.persistence.Entity; import javax.persistence.Id; +import javax.persistence.JoinColumn; +import javax.persistence.ManyToOne; import javax.persistence.Table; +import io.ebean.annotation.DbForeignKey; + @Entity @Table(name = "main_entity_relation") @@ -14,28 +18,34 @@ public class MainEntityRelation { @Id private UUID id; - private String id1; + @ManyToOne + @JoinColumn(name = "id1") + @DbForeignKey(noConstraint = true) + private MainEntity entity1; - private String id2; + @ManyToOne + @JoinColumn(name = "id2") + @DbForeignKey(noConstraint = true) + private MainEntity entity2; private String attr1; - - public String getId1() { - return id1; - } - - public void setId1(String id1) { - this.id1 = id1; - } - - public String getId2() { - return id2; - } - - public void setId2(String id2) { - this.id2 = id2; - } + public MainEntity getEntity1() { + return entity1; + } + + public void setEntity1(MainEntity entity1) { + this.entity1 = entity1; + } + + public MainEntity getEntity2() { + return entity2; + } + + public void setEntity2(MainEntity entity2) { + this.entity2 = entity2; + } + public String getAttr1() { return attr1; } diff --git a/src/test/java/org/tests/lazyforeignkeys/TestLazyForeignKeys.java b/src/test/java/org/tests/lazyforeignkeys/TestLazyForeignKeys.java index 5d5583903..ccafc56f5 100644 --- a/src/test/java/org/tests/lazyforeignkeys/TestLazyForeignKeys.java +++ b/src/test/java/org/tests/lazyforeignkeys/TestLazyForeignKeys.java @@ -26,10 +26,16 @@ public class TestLazyForeignKeys extends BaseTestCase { DB.save(ent1); MainEntityRelation rel1 = new MainEntityRelation(); - rel1.setId1("ent1"); - rel1.setId2("ent2"); + MainEntity e1 = new MainEntity(); + e1.setId("ent1"); + MainEntity e2 = new MainEntity(); + e2.setId("ent2"); + + rel1.setEntity1(e1); + rel1.setEntity2(e2); DB.save(rel1); } + @After public void cleanup() { DB.find(MainEntity.class).delete(); @@ -41,21 +47,22 @@ public class TestLazyForeignKeys extends BaseTestCase { // use findOne without select, so lazy loading will occur LoggedSqlCollector.start(); - ViewMainEntityRelation vwRel1 = DB.find(ViewMainEntityRelation.class).findOne(); + MainEntityRelation rel1 = DB.find(MainEntityRelation.class).findOne(); - assertEquals("ent1", vwRel1.getEntity1().getId()); - assertEquals("ent2", vwRel1.getEntity2().getId()); + assertEquals("ent1", rel1.getEntity1().getId()); + assertEquals("ent2", rel1.getEntity2().getId()); - assertEquals("attr1", vwRel1.getEntity1().getAttr1()); - assertFalse(vwRel1.getEntity1().isDeleted()); - assertTrue(vwRel1.getEntity2().isDeleted()); + assertEquals("attr1", rel1.getEntity1().getAttr1()); + assertFalse(rel1.getEntity1().isDeleted()); + assertTrue(rel1.getEntity2().isDeleted()); List loggedSql = LoggedSqlCollector.stop(); assertThat(loggedSql).hasSize(3); - assertThat(loggedSql.get(0)).contains("select t0.id, t0.attr1, t0.id1, t0.id2 from vw_main_entity_relation"); + assertThat(loggedSql.get(0)).contains("select t0.id, t0.attr1, t0.id1, t0.id2 from main_entity_relation"); assertThat(loggedSql.get(1)).contains("select t0.id, t0.attr1, t0.attr2, t0.id is null from main_entity t0"); assertThat(loggedSql.get(2)).contains("select t0.id, t0.attr1, t0.attr2, t0.id is null from main_entity t0"); } + @Test public void testFindListWithSelect() { PathProperties pathProp = new PathProperties(); @@ -63,20 +70,19 @@ public class TestLazyForeignKeys extends BaseTestCase { pathProp.addToPath("entity1", "id"); pathProp.addToPath("entity2", "id"); - Query query = Ebean.find(ViewMainEntityRelation.class).apply(pathProp); - List list = query.findList(); + Query query = Ebean.find(MainEntityRelation.class).apply(pathProp); + List list = query.findList(); assertEquals(1, list.size()); System.out.println(query.getGeneratedSql()); assertThat(query.getGeneratedSql()).contains("t0.id, t0.attr1, t0.id1, t0.id2, t1.id, t2.id"); - ViewMainEntityRelation vwRel1 = list.get(0); - assertEquals("ent1", vwRel1.getEntity1().getId()); - assertEquals("ent2", vwRel1.getEntity2().getId()); - - assertEquals("attr1", vwRel1.getEntity1().getAttr1()); - assertFalse(vwRel1.getEntity1().isDeleted()); - assertTrue(vwRel1.getEntity2().isDeleted()); + MainEntityRelation rel1 = list.get(0); + assertEquals("ent1", rel1.getEntity1().getId()); + assertEquals("ent2", rel1.getEntity2().getId()); + assertEquals("attr1", rel1.getEntity1().getAttr1()); + assertFalse(rel1.getEntity1().isDeleted()); + assertTrue(rel1.getEntity2().isDeleted()); } } diff --git a/src/test/java/org/tests/lazyforeignkeys/ViewMainEntity.java b/src/test/java/org/tests/lazyforeignkeys/ViewMainEntity.java deleted file mode 100644 index 66ecd74c9..000000000 --- a/src/test/java/org/tests/lazyforeignkeys/ViewMainEntity.java +++ /dev/null @@ -1,42 +0,0 @@ -package org.tests.lazyforeignkeys; - -import javax.persistence.Entity; -import javax.persistence.Id; - -import io.ebean.annotation.View; - -@View(name = "vw_main_entity") -@Entity -public class ViewMainEntity { - - @Id - private String id; - - private String attr1; - - private String attr2; - - public String getId() { - return id; - } - - public void setId(String id) { - this.id = id; - } - - public String getAttr1() { - return attr1; - } - - public void setAttr1(String attr1) { - this.attr1 = attr1; - } - - public String getAttr2() { - return attr2; - } - - public void setAttr2(String attr2) { - this.attr2 = attr2; - } -} diff --git a/src/test/java/org/tests/lazyforeignkeys/ViewMainEntityRelation.java b/src/test/java/org/tests/lazyforeignkeys/ViewMainEntityRelation.java deleted file mode 100644 index 050f76623..000000000 --- a/src/test/java/org/tests/lazyforeignkeys/ViewMainEntityRelation.java +++ /dev/null @@ -1,47 +0,0 @@ -package org.tests.lazyforeignkeys; - -import java.util.UUID; - -import javax.persistence.Entity; -import javax.persistence.Id; -import javax.persistence.JoinColumn; -import javax.persistence.ManyToOne; - -import io.ebean.annotation.DbForeignKey; -import io.ebean.annotation.View; - -@View(name = "vw_main_entity_relation") -@Entity -public class ViewMainEntityRelation { - - @Id - private UUID id; - - @ManyToOne - @JoinColumn(name = "id1") - @DbForeignKey(noConstraint = true) - private MainEntity entity1; - - @ManyToOne - @JoinColumn(name = "id2") - @DbForeignKey(noConstraint = true) - private MainEntity entity2; - - private String attr1; - - public String getAttr1() { - return attr1; - } - - public void setAttr1(String attr1) { - this.attr1 = attr1; - } - - public MainEntity getEntity1() { - return entity1; - } - - public MainEntity getEntity2() { - return entity2; - } -} From bfe46432dad375797041ca72ded0b046fc4ad37f Mon Sep 17 00:00:00 2001 From: Alexander Wagner Date: Thu, 18 Jul 2019 12:14:38 +0200 Subject: [PATCH 4/5] delete views from ddl --- .../migrationtest/h2/R__main_entity_views.sql | 8 -------- src/test/resources/extra-ddl.xml | 12 ------------ 2 files changed, 20 deletions(-) delete mode 100644 src/test/resources/dbmigration/migrationtest/h2/R__main_entity_views.sql diff --git a/src/test/resources/dbmigration/migrationtest/h2/R__main_entity_views.sql b/src/test/resources/dbmigration/migrationtest/h2/R__main_entity_views.sql deleted file mode 100644 index c69bc088d..000000000 --- a/src/test/resources/dbmigration/migrationtest/h2/R__main_entity_views.sql +++ /dev/null @@ -1,8 +0,0 @@ - - - create or replace view vw_main_entity as - select * from main_entity; - - create or replace view vw_main_entity_relation as - select * from main_entity_relation; - \ No newline at end of file diff --git a/src/test/resources/extra-ddl.xml b/src/test/resources/extra-ddl.xml index 0f152469b..9e85e6b4d 100644 --- a/src/test/resources/extra-ddl.xml +++ b/src/test/resources/extra-ddl.xml @@ -4,10 +4,6 @@ drop view order_agg_vw if exists; - - drop view vw_main_entity if exists; - drop view vw_main_entity_relation if exists; - create or replace view order_agg_vw as @@ -16,14 +12,6 @@ from o_order_detail d group by d.order_id - - - create or replace view vw_main_entity as - select * from main_entity; - - create or replace view vw_main_entity_relation as - select * from main_entity_relation; - drop view order_agg_vw if exists ; From 486a8cf1c01c0f324d67d676836d02db3381b344 Mon Sep 17 00:00:00 2001 From: Alexander Wagner Date: Thu, 18 Jul 2019 12:15:44 +0200 Subject: [PATCH 5/5] whitespaces --- src/test/resources/extra-ddl.xml | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/src/test/resources/extra-ddl.xml b/src/test/resources/extra-ddl.xml index 9e85e6b4d..b01ed35b2 100644 --- a/src/test/resources/extra-ddl.xml +++ b/src/test/resources/extra-ddl.xml @@ -4,7 +4,7 @@ drop view order_agg_vw if exists; - + create or replace view order_agg_vw as select d.order_id, sum(d.order_qty * d.unit_price) as order_total, @@ -12,7 +12,7 @@ from o_order_detail d group by d.order_id - + drop view order_agg_vw if exists ; create view order_agg_vw as @@ -21,7 +21,7 @@ from o_order_detail d group by d.order_id; - + create view order_agg_vw as select d.order_id, sum(d.order_qty * d.unit_price) as order_total, @@ -37,7 +37,6 @@ sum(d.ship_qty * d.unit_price) as ship_total from o_order_detail d group by d.order_id; -