Repository: nifi
Updated Branches:
  refs/heads/master 92f17a995 -> 9d6ca6e1e


NIFI-2975: Only start expiring FlowFiles after FlowFile Repository has been 
restored

This closes #1274.

Signed-off-by: Bryan Bende <[email protected]>


Project: http://git-wip-us.apache.org/repos/asf/nifi/repo
Commit: http://git-wip-us.apache.org/repos/asf/nifi/commit/9d6ca6e1
Tree: http://git-wip-us.apache.org/repos/asf/nifi/tree/9d6ca6e1
Diff: http://git-wip-us.apache.org/repos/asf/nifi/diff/9d6ca6e1

Branch: refs/heads/master
Commit: 9d6ca6e1e60e604852cb3ad46eba6d58189b0864
Parents: 92f17a9
Author: Mark Payne <[email protected]>
Authored: Mon Nov 28 16:15:05 2016 -0500
Committer: Bryan Bende <[email protected]>
Committed: Tue Nov 29 09:54:15 2016 -0500

----------------------------------------------------------------------
 .../main/java/org/apache/nifi/controller/FlowController.java   | 6 +++++-
 1 file changed, 5 insertions(+), 1 deletion(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/nifi/blob/9d6ca6e1/nifi-nar-bundles/nifi-framework-bundle/nifi-framework/nifi-framework-core/src/main/java/org/apache/nifi/controller/FlowController.java
----------------------------------------------------------------------
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 adab649..f78363e 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
@@ -484,7 +484,6 @@ public class FlowController implements EventAccess, 
ControllerServiceProvider, R
         // PRIMARY_NODE_ONLY is deprecated, but still exists to handle 
processors that are still defined with it (they haven't been re-configured with 
executeNode = PRIMARY).
         
processScheduler.setSchedulingAgent(SchedulingStrategy.PRIMARY_NODE_ONLY, 
timerDrivenAgent);
         processScheduler.setSchedulingAgent(SchedulingStrategy.CRON_DRIVEN, 
quartzSchedulingAgent);
-        processScheduler.scheduleFrameworkTask(new ExpireFlowFiles(this, 
contextFactory), "Expire FlowFiles", 30L, 30L, TimeUnit.SECONDS);
 
         startConnectablesAfterInitialization = new ArrayList<>();
         startRemoteGroupPortsAfterInitialization = new ArrayList<>();
@@ -699,6 +698,11 @@ public class FlowController implements EventAccess, 
ControllerServiceProvider, R
 
             flowFileRepository.loadFlowFiles(this, maxIdFromSwapFiles + 1);
 
+            // Begin expiring FlowFiles that are old
+            final ProcessContextFactory contextFactory = new 
ProcessContextFactory(contentRepository, flowFileRepository,
+                flowFileEventRepository, counterRepositoryRef.get(), 
provenanceRepository);
+            processScheduler.scheduleFrameworkTask(new ExpireFlowFiles(this, 
contextFactory), "Expire FlowFiles", 30L, 30L, TimeUnit.SECONDS);
+
             // now that we've loaded the FlowFiles, this has restored our 
ContentClaims' states, so we can tell the
             // ContentRepository to purge superfluous files
             contentRepository.cleanup();

Reply via email to