[
https://issues.apache.org/jira/browse/NIFI-8054?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]
Bryan Bende resolved NIFI-8054.
-------------------------------
Fix Version/s: 1.13.0
Resolution: Fixed
> When components are removed from flow, their class loaders are not cleaned up
> -----------------------------------------------------------------------------
>
> Key: NIFI-8054
> URL: https://issues.apache.org/jira/browse/NIFI-8054
> Project: Apache NiFi
> Issue Type: Bug
> Components: Core Framework
> Reporter: Mark Payne
> Assignee: Mark Payne
> Priority: Major
> Fix For: 1.13.0
>
> Time Spent: 20m
> Remaining Estimate: 0h
>
> When a component is removed from the flow, its corresponding
> classes/classloaders are not removed from the JVM's count of loaded classes.
> This can be seen by creating a Process Group with several processors that use
> the @RequiresInstanceClassLoading annotation (GetHDFS, for example). Then use
> a profiler/JConsole/etc. to see how many classes are loaded into memory.
> After the Process Group is deleted and GC is performed, the number of classes
> loaded should drop significantly. Currently, it does not. So if instantiate a
> template, delete the Process Group, instantiate it again, delete it again,
> etc. then I get into a situation where I run out of memory and see
> OutOfMemoryError: GC overhead limit exceeded.
--
This message was sent by Atlassian Jira
(v8.3.4#803005)