鉴于连接到Postgresql数据库(在linux上)的JVM,有没有办法找出Java中的哪个线程负责数据库中的进程?
注意:我正在deBUGging一个资源泄漏错误,这个错误显示为数据库中的一些空闲事务进程。 将这些与负责的线索进行匹配将是有用的,因为线索名称将缩小search范围。
Postgresqlgraphics化安装程序:指定的服务不作为已安装的服务存在
连接拒绝Postgresql服务器
你将如何build立一个数据库文件系统(DBFS)?
I / O完成端口可以帮助数据库而不是文件写入?
加载innoDB数据库主页面时,phpmyadmin EXTREMELY速度很慢
您可以将application_name(使用SET语句) SET为您可以与Java线程名称匹配的内容。
一个有用的技巧是发送一个SIGQUIT信号给Java进程,例如
kill -QUIT your_process_ID
这不会杀死它,但会告诉它打印一个线程转储。 这将列出所有的线程,回溯他们目前正在做的事情。 不幸的是,这通常不会包含像“conn.setautoCommit(false)”这样明显的东西,但它会告诉你每个线程在哪里。
然后,您可以在代码中找到这些点,并尝试追溯以查看是否有任何事务由开始事务提交/回滚无法匹敌。
另一件在编写应用程序时很有用的东西是在连接被创建和控制的地方(即另一个抽象层!)。 当连接被创建并分配给线程时,以及在其中一个事务开始时,这将成为记录日志记录的好地方。
总结以上是内存溢出为你收集整理的哪个Java线程负责PostgreSQL数据库进程?全部内容,希望文章能够帮你解决哪个Java线程负责PostgreSQL数据库进程?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)