Postgres reltuples似乎返回两倍的值

时间:2018-04-03 08:12:46

标签: postgres-9.6

我正在使用此查询来获取大约行数。

SELECT reltuples AS approximate_row_count FROM pg_class WHERE relname = 'table_name';

本文建议您快速计算行数:https://wiki.postgresql.org/wiki/Count_estimate

但有时它似乎会给出两倍的行数。只有在升级到9.6.8之后才会发生这种情况。它曾经一直工作正常。

当我运行ANALYZE table_name时,问题似乎已自行解决。一段时间后,问题就会恢复。

我不确定为什么会这样。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

我现在的猜测是,在写入postgres邮件列表后,这与Postgres 9.8.6中Analyze vacuum功能的错误有关。预计将在Postgres的下一个小更新中修复。

来源:https://www.postgresql.org/message-id/CAFWmNu8SfSgBWcMCaWJfDLbcFUN3riC9jDuzOd08QsJgAqv%2B4A%40mail.gmail.com 3.