From 60ff1c98fa9b2f6d8af2f372c3cab6852b8f2359 Mon Sep 17 00:00:00 2001 From: lukaseder Date: Thu, 12 May 2016 11:54:28 +0200 Subject: [PATCH] [#5256] DAO.delete() should delete via UpdatableRecord.delete(), not via a bulk delete --- jOOQ/src/main/java/org/jooq/impl/DAOImpl.java | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/jOOQ/src/main/java/org/jooq/impl/DAOImpl.java b/jOOQ/src/main/java/org/jooq/impl/DAOImpl.java index 39ebba5071..bef6086663 100644 --- a/jOOQ/src/main/java/org/jooq/impl/DAOImpl.java +++ b/jOOQ/src/main/java/org/jooq/impl/DAOImpl.java @@ -199,13 +199,16 @@ public abstract class DAOImpl, P, T> implements DAO @Override public /* non-final */ void delete(Collection

objects) { - List ids = new ArrayList(); - for (P object : objects) { - ids.add(getId(object)); + // Execute a batch DELETE + if (objects.size() > 1) { + using(configuration).batchDelete(records(objects, true)).execute(); } - deleteById(ids); + // Execute a regular DELETE + else if (objects.size() == 1) { + records(objects, true).get(0).delete(); + } } @SuppressWarnings("unchecked")