You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by "marco polo (JIRA)" <ji...@apache.org> on 2018/01/10 19:48:00 UTC
[jira] [Updated] (MINIFICPP-21) Memory lost by using new thread
[ https://issues.apache.org/jira/browse/MINIFICPP-21?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
marco polo updated MINIFICPP-21:
--------------------------------
Fix Version/s: 0.2.0
> Memory lost by using new thread
> -------------------------------
>
> Key: MINIFICPP-21
> URL: https://issues.apache.org/jira/browse/MINIFICPP-21
> Project: NiFi MiNiFi C++
> Issue Type: Sub-task
> Reporter: marco polo
> Assignee: marco polo
> Fix For: 0.2.0
>
>
> Several components ( the scheduling agents, and the provenance repository ) create a new thread. We should not be doing this. If the flow of events is such that all closures occur, this "possibly lost" isn't a given; however, we can't guarantee all operations will occur in the negative paths.
> Further, it appears as though if a the agents are relying on closure from the flow controller to stop all threads. If we were to stop processing in a processing group as a result of a C2C operation ( for example ), the threads would be deleted from the list of known threads, but not stopped. Since they are detached, this could be a problem and allow the thread to continue in perpetuity. Depending on ulimit, this could cause complete failure.
> Finally, we should probably not detach threads and instead create std::packaged_tasks from which we can keep track of futures.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)