You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@nifi.apache.org by jo...@apache.org on 2022/06/13 15:33:27 UTC

[nifi] 03/13: NIFI-10051: Clear Controller Services' state in a background thread instead of the web thread.

This is an automated email from the ASF dual-hosted git repository.

joewitt pushed a commit to branch support/nifi-1.16
in repository https://gitbox.apache.org/repos/asf/nifi.git

commit 3694c08f6f822d446b03fcbad92300bc812d4df5
Author: Mark Payne <ma...@hotmail.com>
AuthorDate: Tue May 24 17:19:24 2022 -0400

    NIFI-10051: Clear Controller Services' state in a background thread instead of the web thread.
    
    Signed-off-by: Matthew Burgess <ma...@apache.org>
    
    This closes #6078
---
 .../src/main/java/org/apache/nifi/groups/StandardProcessGroup.java     | 2 +-
 .../main/java/org/apache/nifi/controller/flow/StandardFlowManager.java | 3 ++-
 2 files changed, 3 insertions(+), 2 deletions(-)

diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-components/src/main/java/org/apache/nifi/groups/StandardProcessGroup.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-components/src/main/java/org/apache/nifi/groups/StandardProcessGroup.java
index bf4fd7bc24..55f1644b2c 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-components/src/main/java/org/apache/nifi/groups/StandardProcessGroup.java
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-components/src/main/java/org/apache/nifi/groups/StandardProcessGroup.java
@@ -2376,7 +2376,7 @@ public final class StandardProcessGroup implements ProcessGroup {
                     }
                 });
 
-            stateManagerProvider.onComponentRemoved(service.getIdentifier());
+            scheduler.submitFrameworkTask(() -> stateManagerProvider.onComponentRemoved(service.getIdentifier()));
 
             removed = true;
             LOG.info("{} removed from {}", service, this);
diff --git a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/flow/StandardFlowManager.java b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/flow/StandardFlowManager.java
index 7973d5fc33..4a88d40f26 100644
--- a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/flow/StandardFlowManager.java
+++ b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/flow/StandardFlowManager.java
@@ -453,7 +453,8 @@ public class StandardFlowManager extends AbstractFlowManager implements FlowMana
         }
 
         rootControllerServices.remove(service.getIdentifier());
-        flowController.getStateManagerProvider().onComponentRemoved(service.getIdentifier());
+
+        processScheduler.submitFrameworkTask(() -> flowController.getStateManagerProvider().onComponentRemoved(service.getIdentifier()));
 
         extensionManager.removeInstanceClassLoader(service.getIdentifier());