【问题标题】:Encountering a SQL Error 40001 in Dbeaver在 Dbeaver 中遇到 SQL 错误 40001
【发布时间】:2020-02-24 16:53:08
【问题描述】:

我正在执行正确执行的 count * 查询,但由于某种原因,当我尝试将其导出为 CSV 时,我遇到了 SQL 错误 [40001]。任何想法可能是什么问题?

【问题讨论】:

    标签: postgresql dbeaver


    【解决方案1】:

    您正在备用服务器上运行长查询,并且从主服务器复制的一些修改与您的查询冲突。特别是,VACUUM 删除了一些您的查询可能仍想使用的旧行版本。

    PostgreSQL 必须做出选择:要么延迟应用来自主数据库的更改,要么取消阻止复制的查询。

    PostgreSQL 的行为方式由参数max_standby_streaming_delay 决定。默认值让查询在取消前 30 秒完成。

    您有三个选择:

    1. 重试查询,希望这次成功。

    2. 在待机时增加max_standby_streaming_delay。

      您面临的风险是复制会落后。

    3. 在备用数据库上将参数hot_standby_feedback 设置为on,然后主数据库不会VACUUM 备用数据库可能仍需要的行版本。

      您面临的风险是主数据库上的表膨胀,因为 autovacuum 无法完成它的工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-12-16
      • 1970-01-01
      • 2018-06-14
      • 1970-01-01
      相关资源
      最近更新 更多