Issue link: #1978
Add deleteAllByQuery method to JdbcAggregateOperations
This method enables deleting aggregates based on a query by performing the following steps:
1. Lock the target rows using SELECT ... FOR UPDATE based on the query conditions.
2. Delete sub-entities by leveraging a subquery that selects the matching root rows.
3. Delete the root entities using the query conditions.
But if the query has no criteria, deletion is performed in the same way as deleteAll method of JdbcAggregateOperations
Signed-off-by: JaeYeon Kim <ghgh415263@naver.com>
@ -484,6 +485,17 @@ public class JdbcAggregateTemplate implements JdbcAggregateOperations, Applicati
@@ -484,6 +485,17 @@ public class JdbcAggregateTemplate implements JdbcAggregateOperations, Applicati
@ -672,6 +684,13 @@ public class JdbcAggregateTemplate implements JdbcAggregateOperations, Applicati
@@ -672,6 +684,13 @@ public class JdbcAggregateTemplate implements JdbcAggregateOperations, Applicati
@ -132,6 +133,16 @@ public class CascadingDataAccessStrategy implements DataAccessStrategy {
@@ -132,6 +133,16 @@ public class CascadingDataAccessStrategy implements DataAccessStrategy {
@ -142,6 +153,11 @@ public class CascadingDataAccessStrategy implements DataAccessStrategy {
@@ -142,6 +153,11 @@ public class CascadingDataAccessStrategy implements DataAccessStrategy {
@ -256,6 +257,29 @@ public class DefaultDataAccessStrategy implements DataAccessStrategy {
@@ -256,6 +257,29 @@ public class DefaultDataAccessStrategy implements DataAccessStrategy {
@ -272,6 +296,15 @@ public class DefaultDataAccessStrategy implements DataAccessStrategy {
@@ -272,6 +296,15 @@ public class DefaultDataAccessStrategy implements DataAccessStrategy {
@ -126,6 +127,16 @@ public class DelegatingDataAccessStrategy implements DataAccessStrategy {
@@ -126,6 +127,16 @@ public class DelegatingDataAccessStrategy implements DataAccessStrategy {
@ -136,6 +147,11 @@ public class DelegatingDataAccessStrategy implements DataAccessStrategy {
@@ -136,6 +147,11 @@ public class DelegatingDataAccessStrategy implements DataAccessStrategy {
@ -255,6 +256,16 @@ public class MyBatisDataAccessStrategy implements DataAccessStrategy {
@@ -255,6 +256,16 @@ public class MyBatisDataAccessStrategy implements DataAccessStrategy {
@ -278,6 +289,11 @@ public class MyBatisDataAccessStrategy implements DataAccessStrategy {
@@ -278,6 +289,11 @@ public class MyBatisDataAccessStrategy implements DataAccessStrategy {
@ -70,6 +73,42 @@ public class RelationalEntityDeleteWriter implements EntityWriter<Object, Mutabl
@@ -70,6 +73,42 @@ public class RelationalEntityDeleteWriter implements EntityWriter<Object, Mutabl