我正在使用运行Postgresql 8.1.3和Slony-I复制系统(slon版本1.1.5)的SuSE机器(cat / etc / issue:SUSE Linux Enterprise Server 11 SP1(i586))。我们在此服务器上的两个数据库之间进行了一次有效的复制设置,该数据库生成日志传送文件以发送到我们负责维护的远程机器。截至今天早上,我们遇到了一个问题。
有一段时间了,我们在这台机器上遇到了奇怪的记忆问题 - 即使剩下大量的空闲内存,oom-killer似乎也很惊人。这为我们当前的问题奠定了基础 - 我们昨晚对我们的系统进行了大量更新,同时关闭了复制。现在,正如目前的情况一样,我们无法复制更改 - slony试图将所有更改编译成单个大量日志文件,并且在运行大约半小时左右后,它会跳过oom-killer问题,似乎重新启动复制包。由于它不断尝试重建相同的包,因此它永远不会到达任何地方。
我的第一个问题是:有没有办法限制Slony日志传送文件的大小,以便它写出不超过'X'字节(或K,或梅格等),并在经过大小,关闭当前日志传送文件并启动一个新文件?我们已经能够达到大约4兆的大小,然后才能在公平规则下击中oom-killer,所以如果我可以限制它,我至少可以开始生成较小的文件,并希望最终能够完成这个。
我想我的第二个问题是:有没有人能比这个问题更好地解决这个问题?很有可能我正在通过隧道视觉来查看问题,而我真正需要的只是 - 解决方案,而不一定是 - 解决方案。