我一直在通过PostgreSQL服务器进行密集的模式删除和创建,但是现在抱怨..:
WARNING: out of shared memory
ERROR: out of shared memory
HINT: You might need to increase max_locks_per_transaction.
但是问题仍然存在,如果PostgreSQL仅用重新启动service postgresql restart
,我怀疑max_locks_per_transaction不会进行任何调整。
我有点疏远,因为此错误的故障排除列表对我不起作用。
更多信息1409291350:缺少一些细节,但我保留了核心SQL结果。
postgres=# SELECT version();
PostgreSQL 9.3.5 on x86_64-unknown-linux-gnu, compiled by gcc (Ubuntu 4.8.2-19ubuntu1) 4.8.2,
64-bit
和:
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 14.04.1 LTS
Release: 14.04
Codename: trusty
“我怀疑max_locks_per_transaction不会调整任何内容。” -嗯,你为什么会怀疑呢?您是否尝试过按照提示的建议进行操作?
—
Josh Kupershmidt 2014年
您是否尝试过按照提示的建议进行操作?
—
2014年
max_locks_per_transaction = 64 # min 10
到目前为止,我在/etc/postgresql/9.3/main/postgresql.conf中没有评论。
开头的默认max_locks_per_transaction为64-取消注释该行并没有有效地对其进行更改。
—
yieldsfalsehood
可以有效增加到128个解决问题,实际上允许操作继续。
—
2014年
SELECT version()
?有趣的问题...