From 54ae7f1f1bd965aa6dc554d42a15119b8709d0fa Mon Sep 17 00:00:00 2001 From: Avgustin Marinov Date: Fri, 15 Nov 2024 14:18:37 +0200 Subject: [PATCH] Fix delete event on DS soft delete (#2032) Signed-off-by: Avgustin Marinov --- .../jpa/management/JpaDistributionSetManagement.java | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/management/JpaDistributionSetManagement.java b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/management/JpaDistributionSetManagement.java index 4a530b3e1..9e1a5ca00 100644 --- a/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/management/JpaDistributionSetManagement.java +++ b/hawkbit-repository/hawkbit-repository-jpa/src/main/java/org/eclipse/hawkbit/repository/jpa/management/JpaDistributionSetManagement.java @@ -236,9 +236,12 @@ public class JpaDistributionSetManagement implements DistributionSetManagement { // soft delete assigned if (!assigned.isEmpty()) { - final Long[] dsIds = assigned.toArray(new Long[0]); - distributionSetRepository.deleteDistributionSet(dsIds); - targetFilterQueryRepository.unsetAutoAssignDistributionSetAndActionTypeAndAccessContext(dsIds); + distributionSetRepository.saveAll( + setsFound.stream() + .filter(set -> assigned.contains(set.getId())) + .peek(toSoftDelete -> toSoftDelete.setDeleted(true)) + .toList()); + targetFilterQueryRepository.unsetAutoAssignDistributionSetAndActionTypeAndAccessContext(assigned.toArray(new Long[0])); } // mark the rest as hard delete