From 00b0b21668d013f06d5765eb84f2dc49a766f85f Mon Sep 17 00:00:00 2001 From: Denis Ungureanu Date: Fri, 21 May 2021 14:26:01 +0300 Subject: [PATCH] ACS-1600 : Error when running propTablesCleanupJob on an env with 100 million records in alf_prop_value (#473) - commit changes to db anytime `deleteBatchSize` of deleted data is reached --- .../repo/domain/schema/script/DeleteNotExistsExecutor.java | 2 +- .../repo/domain/schema/script/MySQLDeleteNotExistsExecutor.java | 1 - 2 files changed, 1 insertion(+), 2 deletions(-) diff --git a/repository/src/main/java/org/alfresco/repo/domain/schema/script/DeleteNotExistsExecutor.java b/repository/src/main/java/org/alfresco/repo/domain/schema/script/DeleteNotExistsExecutor.java index 238840d969..a55d153ab8 100644 --- a/repository/src/main/java/org/alfresco/repo/domain/schema/script/DeleteNotExistsExecutor.java +++ b/repository/src/main/java/org/alfresco/repo/domain/schema/script/DeleteNotExistsExecutor.java @@ -220,7 +220,6 @@ public class DeleteNotExistsExecutor implements StatementExecutor { // Process batch primaryId = processPrimaryTableResultSet(primaryPrepStmt, secondaryPrepStmts, deletePrepStmt, deleteIds, primaryTableName, primaryColumnName, tableColumn); - connection.commit(); if (primaryId == null) { @@ -299,6 +298,7 @@ public class DeleteNotExistsExecutor implements StatementExecutor if (deleteIds.size() == deleteBatchSize) { deleteFromPrimaryTable(deletePrepStmt, deleteIds, primaryTableName); + connection.commit(); } if (!resultSet.next()) diff --git a/repository/src/main/java/org/alfresco/repo/domain/schema/script/MySQLDeleteNotExistsExecutor.java b/repository/src/main/java/org/alfresco/repo/domain/schema/script/MySQLDeleteNotExistsExecutor.java index 25bf739fb7..fa8b1ca663 100644 --- a/repository/src/main/java/org/alfresco/repo/domain/schema/script/MySQLDeleteNotExistsExecutor.java +++ b/repository/src/main/java/org/alfresco/repo/domain/schema/script/MySQLDeleteNotExistsExecutor.java @@ -126,7 +126,6 @@ public class MySQLDeleteNotExistsExecutor extends DeleteNotExistsExecutor { // Process batch primaryId = processPrimaryTableResultSet(primaryPrepStmt, secondaryPrepStmts, deletePrepStmt, deleteIds, primaryTableName, primaryColumnName, tableColumn); - connection.commit(); if (primaryId == null) {