我在 Debian 7 Wheezy 上运行着 Postgresql 9.1+134wheezy4。从 2015-02-07 开始(我猜它当时已经被移植了,见下文),我经常在 中看到以下行/var/log/postgresql/postgresql-9.1-main.log
:
2015-02-07 11:08:33 CET LOG: using stale statistics instead of current ones because stats collector is not responding
我每天都会出现几次,没有什么特别的或值得担心的。但我不明白这行的意思,也找不到关于它的文档。它在变更日志中提到9.3.6和9.4.1:
将“pgstat 等待超时”警告消息更改为 LOG 级别,并重新表述使其更易于理解 (Tom Lane)
最初认为此消息本质上是一种不可能发生的情况,但它在我们较慢的 buildfarm 成员上经常发生,令人厌烦。将其降低到 LOG 级别,并在措辞上多花点功夫:现在显示为“使用过时的统计数据而不是当前统计数据,因为统计数据收集器没有响应”。
不幸的是,它没有解释含义。WARNING: pgstat wait timeout
直到二月份它改变的时候,我才发现它和新消息一样频繁。日志行上的信息也没有帮助/建设性。一个常见的建议是重新启动服务器或删除共享内存段。
这些是 postgresql 重启的日志:
2015-05-25 17:01:39 CEST LOG: using stale statistics instead of current ones because stats collector is not responding
2015-05-25 18:00:04 CEST LOG: received fast shutdown request
2015-05-25 18:00:04 CEST LOG: aborting any active transactions
2015-05-25 18:00:04 CEST LOG: autovacuum launcher shutting down
2015-05-25 18:00:04 CEST LOG: shutting down
2015-05-25 18:00:04 CEST LOG: database system is shut down
2015-05-25 18:00:06 CEST LOG: database system was shut down at 2015-05-25 18:00:04 CEST
2015-05-25 18:00:06 CEST LOG: database system is ready to accept connections
2015-05-25 18:00:06 CEST LOG: autovacuum launcher started
2015-05-25 18:00:07 CEST LOG: incomplete startup packet
这是否意味着统计信息收集器出现故障或配置错误?出现此现象的原因是什么?如何避免?