#1647 - Change ServerConfig.updateAllPropertiesInBatch to default to false

This commit is contained in:
rob bygrave
2019-03-12 14:49:00 +13:00
parent 9ded3890d7
commit 276e865f72
4 changed files with 53 additions and 76 deletions
@@ -1,8 +1,7 @@
package org.tests.model.onetoone.album;
import io.ebean.BaseTestCase;
import io.ebean.Ebean;
import io.ebean.EbeanServer;
import io.ebean.DB;
import io.ebean.Transaction;
import org.ebeantest.LoggedSqlCollector;
import org.junit.Test;
@@ -24,7 +23,7 @@ public class DeleteById_SoftDelete_Tests extends BaseTestCase {
LoggedSqlCollector.start();
Ebean.delete(Cover.class, cover.getId());
DB.delete(Cover.class, cover.getId());
List<String> sql = LoggedSqlCollector.stop();
assertThat(sql).hasSize(1);
@@ -43,12 +42,12 @@ public class DeleteById_SoftDelete_Tests extends BaseTestCase {
Cover cover = new Cover("b1");
cover.save();
Ebean.delete(Cover.class, cover.getId());
DB.delete(Cover.class, cover.getId());
Cover findWhenSoft = Ebean.find(Cover.class, cover.getId());
Cover findWhenSoft = DB.find(Cover.class, cover.getId());
assertNull(findWhenSoft);
Cover cover1 = Ebean.find(Cover.class)
Cover cover1 = DB.find(Cover.class)
.setIncludeSoftDeletes()
.setId(cover.getId())
.findOne();
@@ -63,7 +62,7 @@ public class DeleteById_SoftDelete_Tests extends BaseTestCase {
assertThat(sql).hasSize(1);
assertThat(sql.get(0)).contains("update cover set deleted=? where id=?; -- bind(false");
Cover findAgain = Ebean.find(Cover.class, cover.getId());
Cover findAgain = DB.find(Cover.class, cover.getId());
assertNotNull(findAgain);
cover.deletePermanent();
@@ -77,7 +76,7 @@ public class DeleteById_SoftDelete_Tests extends BaseTestCase {
LoggedSqlCollector.start();
Ebean.getDefaultServer().delete(Cover.class, cover.getId(), null);
DB.getDefault().delete(Cover.class, cover.getId(), null);
List<String> sql = LoggedSqlCollector.stop();
assertThat(sql).hasSize(1);
@@ -97,7 +96,7 @@ public class DeleteById_SoftDelete_Tests extends BaseTestCase {
LoggedSqlCollector.start();
Ebean.getDefaultServer().deletePermanent(Cover.class, cover.getId(), null);
DB.getDefault().deletePermanent(Cover.class, cover.getId(), null);
List<String> sql = LoggedSqlCollector.stop();
assertThat(sql).hasSize(1);
@@ -107,13 +106,12 @@ public class DeleteById_SoftDelete_Tests extends BaseTestCase {
@Test
public void deleteAllById_when_softDelete() {
EbeanServer server = Ebean.getDefaultServer();
List<Cover> beans = beans(2);
server.saveAll(beans);
DB.saveAll(beans);
LoggedSqlCollector.start();
server.deleteAll(Cover.class, ids(beans));
DB.deleteAll(Cover.class, ids(beans));
List<String> sql = LoggedSqlCollector.stop();
assertThat(sql).hasSize(1);
@@ -127,18 +125,14 @@ public class DeleteById_SoftDelete_Tests extends BaseTestCase {
@Test
public void deleteAllById_when_softDelete_withTransaction() {
EbeanServer server = Ebean.getDefaultServer();
List<Cover> beans = beans(2);
server.saveAll(beans);
DB.saveAll(beans);
LoggedSqlCollector.start();
Transaction transaction = server.beginTransaction();
try {
server.deleteAll(Cover.class, ids(beans), transaction);
server.commitTransaction();
} finally {
server.endTransaction();
try (Transaction transaction = DB.beginTransaction()) {
DB.getDefault().deleteAll(Cover.class, ids(beans), transaction);
transaction.commit();
}
List<String> sql = LoggedSqlCollector.stop();
@@ -154,11 +148,11 @@ public class DeleteById_SoftDelete_Tests extends BaseTestCase {
public void ebean_deleteAllPermanentById_when_softDelete() {
List<Cover> beans = beans(2);
Ebean.saveAll(beans);
DB.saveAll(beans);
LoggedSqlCollector.start();
Ebean.deleteAllPermanent(Cover.class, ids(beans));
DB.deleteAllPermanent(Cover.class, ids(beans));
List<String> sql = LoggedSqlCollector.stop();
assertThat(sql).hasSize(1);
@@ -168,13 +162,12 @@ public class DeleteById_SoftDelete_Tests extends BaseTestCase {
@Test
public void deleteAllPermanentById_when_softDelete() {
EbeanServer server = Ebean.getDefaultServer();
List<Cover> beans = beans(2);
server.saveAll(beans);
DB.saveAll(beans);
LoggedSqlCollector.start();
server.deleteAllPermanent(Cover.class, ids(beans));
DB.deleteAllPermanent(Cover.class, ids(beans));
List<String> sql = LoggedSqlCollector.stop();
assertThat(sql).hasSize(1);
@@ -185,18 +178,14 @@ public class DeleteById_SoftDelete_Tests extends BaseTestCase {
@Test
public void deleteAllPermanentById_when_softDelete_withTransaction() {
EbeanServer server = Ebean.getDefaultServer();
List<Cover> beans = beans(2);
server.saveAll(beans);
DB.saveAll(beans);
LoggedSqlCollector.start();
Transaction transaction = server.beginTransaction();
try {
server.deleteAllPermanent(Cover.class, ids(beans), transaction);
server.commitTransaction();
} finally {
server.endTransaction();
try (Transaction transaction = DB.beginTransaction()) {
DB.getDefault().deleteAllPermanent(Cover.class, ids(beans), transaction);
transaction.commit();
}
List<String> sql = LoggedSqlCollector.stop();
@@ -208,18 +197,17 @@ public class DeleteById_SoftDelete_Tests extends BaseTestCase {
public void ebean_deleteAll_when_softDelete() {
List<Cover> beans = beans(2);
Ebean.saveAll(beans);
DB.saveAll(beans);
LoggedSqlCollector.start();
Ebean.deleteAll(beans);
DB.deleteAll(beans);
List<String> sql = LoggedSqlCollector.stop();
assertThat(sql).hasSize(3);
if (isPersistBatchOnCascade()) {
assertThat(sql.get(0)).contains("update cover set s3_url=?, deleted=? where id=?");
}
else {
assertThat(sql.get(0)).contains("update cover set deleted=? where id=?");
} else {
assertThat(sql.get(0)).contains("update cover set deleted=? where id=?");
}
}
@@ -227,18 +215,17 @@ public class DeleteById_SoftDelete_Tests extends BaseTestCase {
@Test
public void deleteAll_when_softDelete() {
EbeanServer server = Ebean.getDefaultServer();
List<Cover> beans = beans(2);
server.saveAll(beans);
DB.saveAll(beans);
LoggedSqlCollector.start();
server.deleteAll(beans);
DB.deleteAll(beans);
List<String> sql = LoggedSqlCollector.stop();
assertThat(sql).hasSize(3);
if (isPersistBatchOnCascade()) {
assertThat(sql.get(0)).contains("update cover set s3_url=?, deleted=? where id=?");
assertThat(sql.get(0)).contains("update cover set deleted=? where id=?");
}
else {
assertThat(sql.get(0)).contains("update cover set deleted=? where id=?");
@@ -248,24 +235,20 @@ public class DeleteById_SoftDelete_Tests extends BaseTestCase {
@Test
public void deleteAll_when_softDelete_withTransaction() {
EbeanServer server = Ebean.getDefaultServer();
List<Cover> beans = beans(2);
server.saveAll(beans);
DB.saveAll(beans);
LoggedSqlCollector.start();
Transaction transaction = server.beginTransaction();
try {
server.deleteAll(beans, transaction);
server.commitTransaction();
} finally {
server.endTransaction();
try (Transaction transaction = DB.beginTransaction()) {
DB.getDefault().deleteAll(beans, transaction);
transaction.commit();
}
List<String> sql = LoggedSqlCollector.stop();
assertThat(sql).hasSize(3);
if (isPersistBatchOnCascade()) {
assertThat(sql.get(0)).contains("update cover set s3_url=?, deleted=? where id=?");
assertThat(sql.get(0)).contains("update cover set deleted=? where id=?");
}
else {
assertThat(sql.get(0)).contains("update cover set deleted=? where id=?");
@@ -275,13 +258,12 @@ public class DeleteById_SoftDelete_Tests extends BaseTestCase {
@Test
public void deleteAllPermanent_when_softDelete() {
EbeanServer server = Ebean.getDefaultServer();
List<Cover> beans = beans(2);
server.saveAll(beans);
DB.saveAll(beans);
LoggedSqlCollector.start();
server.deleteAllPermanent(beans);
DB.deleteAllPermanent(beans);
List<String> sql = LoggedSqlCollector.stop();
assertThat(sql).hasSize(3);
@@ -291,18 +273,14 @@ public class DeleteById_SoftDelete_Tests extends BaseTestCase {
@Test
public void deleteAllPermanent_when_softDelete_withTransaction() {
EbeanServer server = Ebean.getDefaultServer();
List<Cover> beans = beans(2);
server.saveAll(beans);
DB.saveAll(beans);
LoggedSqlCollector.start();
Transaction transaction = server.beginTransaction();
try {
server.deleteAllPermanent(beans, transaction);
server.commitTransaction();
} finally {
server.endTransaction();
try (Transaction transaction = DB.beginTransaction()) {
DB.getDefault().deleteAllPermanent(beans, transaction);
transaction.commit();
}
List<String> sql = LoggedSqlCollector.stop();
@@ -1,7 +1,7 @@
package org.tests.o2m.jointable;
import io.ebean.BaseTestCase;
import io.ebean.Ebean;
import io.ebean.DB;
import org.ebeantest.LoggedSqlCollector;
import org.junit.Test;
@@ -19,7 +19,7 @@ public class TestOneToManyJoinTable extends BaseTestCase {
private JtMonkey m2 = new JtMonkey("Uim");
private void initialInsert() {
Ebean.saveAll(Arrays.asList(troop, m0, m1, m2));
DB.saveAll(Arrays.asList(troop, m0, m1, m2));
}
@Test
@@ -34,7 +34,7 @@ public class TestOneToManyJoinTable extends BaseTestCase {
troop.getMonkeys().add(m0);
troop.getMonkeys().add(m1);
Ebean.save(troop);
DB.save(troop);
List<String> sql = LoggedSqlCollector.current();
if (isPersistBatchOnCascade()) {
@@ -48,14 +48,14 @@ public class TestOneToManyJoinTable extends BaseTestCase {
assertThat(sql.get(1)).contains("insert into troop_monkey (troop_pid, monkey_mid) values (?, ?)");
}
long intersectionRows = Ebean.createSqlQuery("select count(*) as total from troop_monkey where troop_pid = ?")
long intersectionRows = DB.sqlQuery("select count(*) as total from troop_monkey where troop_pid = ?")
.setParameter(1, troop.getPid())
.findSingleLong();
assertThat(intersectionRows).isEqualTo(2L);
LoggedSqlCollector.current();
JtTroop fetchTroop = Ebean.find(JtTroop.class)
JtTroop fetchTroop = DB.find(JtTroop.class)
.fetch("monkeys")
.where().idEq(troop.getPid())
.findOne();
@@ -67,7 +67,7 @@ public class TestOneToManyJoinTable extends BaseTestCase {
assertThat(trimSql(sql.get(0))).contains("from troop t0 left join troop_monkey t1z_ on t1z_.troop_pid = t0.pid left join monkey t1 on t1.mid = t1z_.monkey_mid where t0.pid = ?");
assertThat(trimSql(sql.get(0))).contains("select t0.pid, t0.name, t0.version, t1.mid, t1.name, t1.food_preference, t1.version");
Ebean.delete(troop);
DB.delete(troop);
sql = LoggedSqlCollector.stop();
assertThat(sql).hasSize(2);
@@ -85,23 +85,22 @@ public class TestOneToManyJoinTable extends BaseTestCase {
// make m2 dirty ... cascades to an update on Uim
m2.setFoodPreference("Apple");
trainer.getMonkeys().add(m2);
trainer.getMonkeys().add(Ebean.getReference(JtMonkey.class, m1.getMid()));
trainer.getMonkeys().add(DB.getReference(JtMonkey.class, m1.getMid()));
trainer.getMonkeys().add(new JtMonkey("FAlp"));
trainer.getMonkeys().add(new JtMonkey("FBet"));
trainer.getMonkeys().add(new JtMonkey("FThe"));
LoggedSqlCollector.start();
Ebean.save(trainer);
DB.save(trainer);
List<String> sql = LoggedSqlCollector.current();
//Collections.sort(sql);
if (isPersistBatchOnCascade()) {
assertThat(sql).hasSize(13);
assertThat(sql.get(0)).contains("insert into trainer ");
assertThat(sql.get(1)).contains("insert into monkey ");
assertSqlBind(sql, 2, 4);
assertThat(sql.get(5)).contains("update monkey set name=?, food_preference=?, version=? where mid=? and version=?");
assertThat(sql.get(5)).contains("update monkey set food_preference=?, version=? where mid=? and version=?");
assertThat(sql.get(6)).contains("-- bind(");
assertThat(sql.get(7)).contains("insert into trainer_monkey ");
assertSqlBind(sql, 8, 12);
@@ -116,7 +115,7 @@ public class TestOneToManyJoinTable extends BaseTestCase {
}
int intersectionRows = Ebean.createSqlQuery("select count(*) as total from trainer_monkey where trainer_tid = ?")
int intersectionRows = DB.sqlQuery("select count(*) as total from trainer_monkey where trainer_tid = ?")
.setParameter(1, trainer.getTid())
.findOne()
.getInteger("total");
@@ -125,7 +124,7 @@ public class TestOneToManyJoinTable extends BaseTestCase {
LoggedSqlCollector.current();
Ebean.delete(trainer);
DB.delete(trainer);
sql = LoggedSqlCollector.stop();
assertThat(sql).hasSize(2);