Postgres 和 PyCharm 以及挂起的事务

Postgres and PyCharm and hung transactions

我一直 运行 关注我的 postgresql 数据库挂起的问题,因为我在 PyCharm 中调试时没有完成事务。

日志中有几条这样的消息:

[16:30:40 PDT] unexpected EOF on client connection with an open transaction

现在数据库挂了,除了关闭数据库(vagrant halt;vagrant up)我不知道如何恢复

有什么方法可以清除那些卡住的事务,这样我就不必经历停止和重新启动数据库的过程了吗?

感谢任何信息

我在这里找到了这个解决方案:

 SELECT * FROM pg_stat_activity ORDER BY client_addr ASC, query_start ASC;

会列出你所有的hung/idle交易,然后你可以运行

SELECT pg_terminate_backend(3592) 

使用 table 中列出的 pid。

而且比重启 vagrant 或 postgresql 快得多