【问题标题】:Postgres reltuples seems to return twice the number of valuesPostgres reltuples 似乎返回两倍的值
【发布时间】:2018-09-12 11:53:49
【问题描述】:

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

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 时,问题似乎自行解决了。一段时间后,问题又回来了。

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

【问题讨论】:

  • double 听起来不像是可重现的问题。 pg_stat 显示估计,基于分析时收集的信息。它不保证是准确的。

标签: postgres-9.6


【解决方案1】:

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

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

【讨论】:

    猜你喜欢
    • 2012-04-17
    • 1970-01-01
    • 2014-06-20
    • 1970-01-01
    • 2012-11-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多