我有一个包含100多列的主表。我在Postgres 9.1中使用继承概念创建了子表。
现在我正在尝试迁移到9.3 Postgres版本。当我更新分区表中的特定行时,它显示出内存错误。但是在postgres 9.1版本中,它并没有抛出那个错误。
我在postgres中找到了9.3.5版本的开放bug
http://www.postgresql.org/message-id/alpine.LRH.2.11.1411080127430.2920@calx115.ast.cam.ac.uk
我不知道它是postgres bug还是我们的数据库架构错误
我的分区表有30000个
我的孩子表数是610
我的Postgres.conf文件设置是默认设置
是否有人建议我可能的解决方案 在此先感谢
答案 0 :(得分:0)
从the previous mail引用Tom Lane:
继承基础设施只能支持100个 子表。如果我们开始实施硬连线 分区方案,可能有数千个分区 可能是实际的,但今天不是。遗憾。
似乎你的610子表太多了,无法使用当前的postgres架构可靠地工作。除了大幅减少子表的数量并使用其他方法构建数据之外,你自己几乎无法做到这一点。