我有一个包含100多列的主表。我在Postgres9.1中使用继承概念创建了子表。
现在我正在尝试迁移到9.3 Postgres版本。当我更新分区表中的特定行时,它显示内存不足错误。但在postgres9.1版本中,它并没有抛出那个错误。
我在9.3.5版本的postgres中发现了打开的错误
http://www.postgresql.org/message-id/alpine.LRH.2.11.1411080127430.2920@calx115.ast.cam.ac.uk
我不知道是postgres错误还是我们的数据库架构错误
我的分区表有30000行
我的孩子表计数为610
我的Postgres.conf文件设置是默认设置
有人能给我建议可能的解决方案吗
提前感谢
引用上一封邮件中的Tom Lane:
继承基础设施仅设计为支持100子表。如果我们有时间实现一个硬连线分区方案,可能有数千个分区可能很实用,但今天不行。很抱歉
您的610个子表似乎太多了,无法可靠地使用当前的postgres架构。除了大幅减少子表的数量并使用其他方法来构建数据外,您自己在这里几乎无能为力。