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

David Handermann commented on NIFI-8435:
----------------------------------------

[~jzahner] I put together PR 5020 to add a {{Kudu Client Worker Count}} 
property for {{PutKudu}}.  The default value uses the same approach as 
{{KuduClient}}, but for your use case, it seems like a smaller number, matching 
the number of Concurrent Tasks configured for PutKudu, would be better.  The PR 
also ensures that {{KuduSession}} is always closed.  The custom worker count 
number also provided the opportunity to set a custom ThreadFactory so that 
thread names now include the Processor Identifier, which should be helpful for 
troubleshooting.  Kudu changes from Netty 3 to Netty 4 have definitely impacted 
the memory footprint, so I do not expect these changes to be a complete 
resolution.  However, if you have any feedback on the PR, feel free to add 
comments.

> PutKudu 1.13.2 Memory Leak
> --------------------------
>
>                 Key: NIFI-8435
>                 URL: https://issues.apache.org/jira/browse/NIFI-8435
>             Project: Apache NiFi
>          Issue Type: Bug
>          Components: Extensions
>    Affects Versions: 1.13.2
>         Environment: NiFi 1.13.2, 8-Node Cluster running on CentOS 7, Kudu 
> 1.10.0
>            Reporter: Josef Zahner
>            Assignee: Peter Gyori
>            Priority: Critical
>              Labels: kudu, nifi, oom
>         Attachments: Screenshot 2021-04-20 at 14.27.11.png, 
> grafana_heap_overview.png, kudu_inserts_per_sec.png, 
> putkudu_processor_config.png, visualvm_bytes_detail_view.png, 
> visualvm_total_bytes_used.png
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> We just upgraded from NiFi 1.11.4 to 1.13.2 and faced a huge issue with 
> PutKudu.
> PutKudu on the 1.13.2 eats up all the heap memory and garbage collection 
> can't anymore free up the memory. We allow Java to use 31GB memory and as you 
> can see with NiFi 1.11.4 it will be used like it should with GC. However with 
> NiFi 1.13.2 with our actual load it fills up the memory relatively fast. 
> Manual GC via visualvm tool didn't help at all to free up memory.
> !grafana_heap_overview.png!
>  
> Visual VM shows the following culprit:  !visualvm_total_bytes_used.png!
> !visualvm_bytes_detail_view.png!
> The bytes array shows millions of char data which isn't cleaned up. In fact 
> here 14,9GB memory (heapdump has been taken after a while of full load). If 
> we check the same on NiFi 1.11.4, the bytes array is nearly empty, around a 
> few hundred MBs.
> As you could imagine we can't upload the heap dump as currently we have only 
> productive data on the system. But don't hesitate to ask questions about the 
> heapdump if you need more information.
> I haven't done any screenshot of the processor config, but I can do that if 
> you wish (we are back to NiFi 1.11.4 at the moment). 



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to