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

Mark Payne commented on NIFI-241:
---------------------------------

Mike,

I'm looking into this. I agree that the framework does call initialize() and 
the @OnAdded methods. The @OnAdded methods should not be called, as the 
Processor is not being added to the canvas at that point. However, I am not 
sure that I agree that the initialize() method should not be called.

I'm curious as to what kind of resources you are allocating here - typically 
the resource allocation should happen in methods using @OnScheduled. Can you 
explain the use case a bit?

Thanks
-Mark

> Framework FingerprintFactory begins processor life cycle but does not finish
> ----------------------------------------------------------------------------
>
>                 Key: NIFI-241
>                 URL: https://issues.apache.org/jira/browse/NIFI-241
>             Project: Apache NiFi
>          Issue Type: Bug
>          Components: Core Framework
>            Reporter: Michael Moser
>            Assignee: Mark Payne
>             Fix For: 0.0.1
>
>
> The FingerprintFactory will create Processor objects and invoke their 
> initialize() and @OnAdded methods.  If a Processor uses system resources, 
> these methods are where those resources are allocated.  But, those processors 
> are never disposed by calling their @OnRemoved or @OnShutdown methods.  This 
> may result in system resource leaks, depending on how processors are 
> implemented.
> To reproduce, add a processor to the NiFi graph and restart NiFi.  Note that 
> initialize() and @OnAdded is called at least twice (I observed 3 times) as 
> NiFi starts.  The getIdentifier() is different for each invocation.  Shutdown 
> NiFi and observe that @OnShutdown is called once.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to