我有简单的 mysql GenerateTableFetch 处理器在第二次运行时无限卡住。当我开始流程时 - 就像一个魅力一样,在下一次预定的运行中它被卡住了。
流程:从一个表中从远程mysql服务器获取数据,进行转换并将其放入sql server。



Mysql驱动位置:file:///home/user/jdbc/mysql/mysql-connector-java-8.0.12.jar
Nifi 版本 1.7.1。
我尝试了什么:
不同的 mysql 连接器(5.1.47 和 8.0.12),不同的处理器(QueryDatabaseTable,ExecuteSQL) - 都以相同的方式卡住。
从 sql server 到 sql server 的相同流程完美运行。
从转储日志看起来像线程卡在试图关闭以前的 mysql 连接:
"Abandoned connection cleanup thread" Id=3080 TIMED_WAITING on java.lang.ref.ReferenceQueue$Lock@607800ac
at java.lang.Object.wait(Native Method)
at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:144)
at com.mysql.cj.jdbc.AbandonedConnectionCleanupThread.run(AbandonedConnectionCleanupThread.java:70)
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)
Number of Locked Synchronizers: 1
- java.util.concurrent.ThreadPoolExecutor$Worker@1f01ec47
可能是什么问题呢?或者我接下来可以检查什么?
谢谢!