微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在PostgreSQL中的小表上ALTER查询速度非常慢

我有一个Postgresql 9.2和一个小型数据库,只有一些我正在研究的网站的种子数据.

以下查询似乎永远运行:

ALTER TABLE diagnose_bodypart ADD description text NOT NULL;

diagnose_bodypart是一个少于10行的表.我让查询运行超过一分钟没有结果.可能是什么问题呢?有没有调试这个的建议?

添加列不需要重写表(除非您指定DEFAULT).没有任何锁定,这是一个快速操作.正如克雷格指出的那样,pg_locks是值得检查的地方.

通常,最可能的原因是长期运行的事务.我会看看这些表中的工作流程以及交易持续多长时间.这种锁通常是事务性的,因此提交事务通常可以解决问题.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐