[ 
https://issues.apache.org/jira/browse/NIFI-11556?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17752485#comment-17752485
 ] 

ASF subversion and git services commented on NIFI-11556:
--------------------------------------------------------

Commit b3c620411a7fed46e4b2c18ab5a06d08032f954e in nifi's branch 
refs/heads/main from Mark Payne
[ https://gitbox.apache.org/repos/asf?p=nifi.git;h=b3c620411a ]

NIFI-11556: Added ability to use a Process Group as a Stateless Flow

When shutting down FlowController, wait up to gracefulShutdownSeconds seconds 
for the components to stop before shutting down thread pools. This allows for 
asynchronous operations such as disableControllerServicesAsync to complete 
during shutdown. Updated StandardStatelessFlow so that on shutdown it catches 
more general Exception to ensure that shutdown succeeds

Ensure that Max Concurrent Tasks cannot be set less than 1 for stateless group; 
fixed typo in ProcessGroupDTO's docs; on shutdown, we may need to disable 
controller services asynchronously. At that point, the thread pool used to do 
so may already be shutdown. If so, catch this and create a new single-thread 
pool, disable the service, and immediately shutdown the pool. Also, if we fail 
to disable services on shutdown of a stateless flow, instead of throwing an 
Exception, just log it and move on - it doesn't make much sense for shutdown() 
to throw an Exception in that case.

Updated system tests so that when emptying a queue, we check the result and if 
the queue still has data (because a Processor hasn't acknowledged the data, for 
example) then continue issuing request until the queue fully becomes empty.

When shutting down input/output ports for stateless group, ensure that we wait 
for the ports' active threads to complete before returning

When stopping StatelessGroupNode, ensure that all the Processors, Controller 
Services (even those not executed by the Stateless Engine) are stopped/disabled 
before considering the Stateless Group to be fully STOPPED.

This closes #7253

Signed-off-by: David Handermann <[email protected]>


> Allow Process Group to be run as a Stateless Flow
> -------------------------------------------------
>
>                 Key: NIFI-11556
>                 URL: https://issues.apache.org/jira/browse/NIFI-11556
>             Project: Apache NiFi
>          Issue Type: New Feature
>          Components: Core Framework, Core UI, Documentation &amp; Website
>            Reporter: Mark Payne
>            Assignee: Mark Payne
>            Priority: Major
>             Fix For: 2.latest
>
>          Time Spent: 4h 40m
>  Remaining Estimate: 0h
>
> In version 1.15.0, we introduced the ExecuteStateless Processor. This was a 
> quick win to allow running a flow using the Stateless Engine.
> Since then, we have seen many users make use of it. However, it was always 
> intended as a stopgap until we had the ability to truly integrate Stateless 
> groups with NiFi. This feature will allow for much better integration between 
> the two, allowing users to configure a Process Group to run as a stateless 
> flow.
> This will offer better performance by integrating directly with repositories 
> and provide a much better user experience, not needing to save off the flow 
> and configure a separate Processor to point to it, providing visibility into 
> what's happening, better Provenance capabilities (as ExecuteStateless shows 
> all events as having been performed by the one Processor), more seamless 
> configuration, etc.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)

Reply via email to