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

mattyb149 pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/nifi.git


The following commit(s) were added to refs/heads/main by this push:
     new 1b8cd8349b NIFI-10703 - Updated VersionedDataflow to support 
MaxEventDrivenThreadCount NIFI-10703 - Also setting the 
maxEventDrivenThreadCount on the controller when using a versioned flow. 
NIFI-10703 - Corrected to use getMaxEventDrivenThreadCount(), set a default 
value for event driven thread count in VersionedDataflow NIFI-10703 - Updated 
log message for setMaxThreadCount in FlowController.java NIFI-10703 - Updated 
default value for maxEventDrivenThreadCount NIFI-10703 - Set p [...]
1b8cd8349b is described below

commit 1b8cd8349ba31f96f2898a712611d20d538ba240
Author: Nathan Gough <[email protected]>
AuthorDate: Tue Nov 8 22:49:41 2022 -0500

    NIFI-10703 - Updated VersionedDataflow to support MaxEventDrivenThreadCount
    NIFI-10703 - Also setting the maxEventDrivenThreadCount on the controller 
when using a versioned flow.
    NIFI-10703 - Corrected to use getMaxEventDrivenThreadCount(), set a default 
value for event driven thread count in VersionedDataflow
    NIFI-10703 - Updated log message for setMaxThreadCount in 
FlowController.java
    NIFI-10703 - Updated default value for maxEventDrivenThreadCount
    NIFI-10703 - Set private for DEFAULT_MAX_EVENT_DRIVEN_THREAD_COUNT
    
    Signed-off-by: Matthew Burgess <[email protected]>
    
    This closes #6638
---
 .../org/apache/nifi/controller/flow/VersionedDataflow.java    | 11 +++++++++++
 .../main/java/org/apache/nifi/controller/FlowController.java  |  2 +-
 .../controller/serialization/VersionedDataflowMapper.java     |  1 +
 .../controller/serialization/VersionedFlowSynchronizer.java   |  1 +
 4 files changed, 14 insertions(+), 1 deletion(-)

diff --git 
a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/flow/VersionedDataflow.java
 
b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/flow/VersionedDataflow.java
index 1f37fbc1c1..53bac9fc8d 100644
--- 
a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/flow/VersionedDataflow.java
+++ 
b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core-api/src/main/java/org/apache/nifi/controller/flow/VersionedDataflow.java
@@ -30,6 +30,7 @@ import java.util.Set;
 public class VersionedDataflow {
     private VersionedFlowEncodingVersion encodingVersion;
     private int maxTimerDrivenThreadCount;
+    private int maxEventDrivenThreadCount;
     private List<VersionedFlowRegistryClient> registries;
     private List<VersionedParameterContext> parameterContexts;
     private List<VersionedParameterProvider> parameterProviders;
@@ -38,6 +39,8 @@ public class VersionedDataflow {
     private Set<VersionedTemplate> templates;
     private VersionedProcessGroup rootGroup;
 
+    private final static int DEFAULT_MAX_EVENT_DRIVEN_THREAD_COUNT = 1;
+
     public VersionedFlowEncodingVersion getEncodingVersion() {
         return encodingVersion;
     }
@@ -54,6 +57,14 @@ public class VersionedDataflow {
         this.maxTimerDrivenThreadCount = maxTimerDrivenThreadCount;
     }
 
+    public int getMaxEventDrivenThreadCount() {
+        return maxEventDrivenThreadCount < 1 ? 
DEFAULT_MAX_EVENT_DRIVEN_THREAD_COUNT : maxEventDrivenThreadCount;
+    }
+
+    public void setMaxEventDrivenThreadCount(final int 
maxEventDrivenThreadCount) {
+        this.maxEventDrivenThreadCount = maxEventDrivenThreadCount;
+    }
+
     public List<VersionedFlowRegistryClient> getRegistries() {
         return registries;
     }
diff --git 
a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FlowController.java
 
b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FlowController.java
index 3140fbde3a..ce93d4a474 100644
--- 
a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FlowController.java
+++ 
b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FlowController.java
@@ -1591,7 +1591,7 @@ public class FlowController implements 
ReportingTaskProvider, Authorizable, Node
      */
     private void setMaxThreadCount(final int maxThreadCount, final FlowEngine 
engine, final AtomicInteger maxThreads) {
         if (maxThreadCount < 1) {
-            throw new IllegalArgumentException("Cannot set max number of 
threads to less than 2");
+            throw new IllegalArgumentException("Cannot set max number of 
threads to less than 1");
         }
 
         maxThreads.getAndSet(maxThreadCount);
diff --git 
a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/serialization/VersionedDataflowMapper.java
 
b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/serialization/VersionedDataflowMapper.java
index 05382f7cde..99566d78b1 100644
--- 
a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/serialization/VersionedDataflowMapper.java
+++ 
b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/serialization/VersionedDataflowMapper.java
@@ -82,6 +82,7 @@ public class VersionedDataflowMapper {
         final VersionedDataflow dataflow = new VersionedDataflow();
         dataflow.setEncodingVersion(ENCODING_VERSION);
         
dataflow.setMaxTimerDrivenThreadCount(flowController.getMaxTimerDrivenThreadCount());
+        
dataflow.setMaxEventDrivenThreadCount(flowController.getMaxEventDrivenThreadCount());
         dataflow.setControllerServices(mapControllerServices());
         dataflow.setParameterContexts(mapParameterContexts());
         dataflow.setRegistries(mapRegistries());
diff --git 
a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/serialization/VersionedFlowSynchronizer.java
 
b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/serialization/VersionedFlowSynchronizer.java
index c8201898d4..eb07a5501a 100644
--- 
a/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/serialization/VersionedFlowSynchronizer.java
+++ 
b/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/serialization/VersionedFlowSynchronizer.java
@@ -370,6 +370,7 @@ public class VersionedFlowSynchronizer implements 
FlowSynchronizer {
 
             if (versionedFlow != null) {
                 
controller.setMaxTimerDrivenThreadCount(versionedFlow.getMaxTimerDrivenThreadCount());
+                
controller.setMaxEventDrivenThreadCount(versionedFlow.getMaxEventDrivenThreadCount());
                 ProcessGroup rootGroup = 
controller.getFlowManager().getRootGroup();
 
                 final Map<String, VersionedParameterContext> 
versionedParameterContextMap = new HashMap<>();

Reply via email to