2

实际上,这不是 django (iPython) shell 的错。问题是打开 django shell 的开发人员./manage.py shell运行了一些查询(它通常只生成选择),然后要么让 shell 运行,要么以某种方式终止他们的(ssh)会话(实际上,我不确定后一种情况是否会离开交易打开 - 我还没有测试过)

在任何情况下,nagios 都会定期对这些空闲事务发出警报。我们当然可以打电话developer.stop_doing_that_dammit(),但它不可靠。

我正在寻找以允许开发人员使用 django shell 的方式解决此问题的想法,但如果他们忘记关闭会话,则会关闭事务。

4

1 回答 1

1

您可能总是运行一个 cron 作业,该作业将在数据库中调用 pg_cancel_backend(),用于空闲时间超过例如 1 天的后端(当然这取决于 nagios 设置)。

于 2010-08-06T22:07:20.237 回答