You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@nifi.apache.org by "David Handermann (Jira)" <ji...@apache.org> on 2022/08/17 01:38:00 UTC

[jira] [Resolved] (NIFI-5501) MySQL connection cleanup thread leak

     [ https://issues.apache.org/jira/browse/NIFI-5501?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

David Handermann resolved NIFI-5501.
------------------------------------
    Resolution: Invalid

This bug is related to the MySQL JDBC Driver, which is referenced in NiFi components, but is maintained and distributed directly from the vendor.

> MySQL connection cleanup thread leak
> ------------------------------------
>
>                 Key: NIFI-5501
>                 URL: https://issues.apache.org/jira/browse/NIFI-5501
>             Project: Apache NiFi
>          Issue Type: Bug
>          Components: Core Framework
>    Affects Versions: 1.7.1
>         Environment: - Ubuntu 18.04 LTS
> - mysql-connector-java-5.1.46
> - Java 1.8.0_171
>            Reporter: Tanapol Nearunchorn
>            Priority: Major
>         Attachments: nifi-threaddump.txt
>
>
> There are thousands of "Abandoned connection cleanup thread" left running that cause memory leak in NiFi.
> I got a thread dump example here (full thread dump also attached):
> {code:java}
> "Abandoned connection cleanup thread" #18371 daemon prio=5 os_prio=0 tid=0x00007f3b840e7800 nid=0x76a3 in Object.wait() [0x00007f3b24ebb000]
> java.lang.Thread.State: TIMED_WAITING (on object monitor)
> at java.lang.Object.wait(Native Method)
> at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
> - locked <0x0000000348a12628> (a java.lang.ref.ReferenceQueue$Lock)
> at com.mysql.jdbc.AbandonedConnectionCleanupThread.run(AbandonedConnectionCleanupThread.java:64)
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
> at java.lang.Thread.run(Thread.java:748)
> Locked ownable synchronizers:
> - <0x0000000348a12648> (a java.util.concurrent.ThreadPoolExecutor$Worker)
> {code}
> I'm not sure where these threads come from which component because in my flow, I used CaptureChangeMySQL processor and DBCPConnectionPool controller service.
> As I also found related problem here: [mysql Bug #69526|https://bugs.mysql.com/bug.php?id=69526] but it quite a bit old.



--
This message was sent by Atlassian Jira
(v8.20.10#820010)