Postgresql和旧的持久性数据

Postgresql和旧的持久性数据,postgresql,Postgresql,是否有人对使用PostgreSQL的旧持久性数据有问题。我最近做了一份报告,得到了两个不同的结果。我第二次运行报告时丢失了六条记录。几乎完全可以肯定,问题出在您的代码中,或者您如何使用PostgreSQL。你没有给任何人提供足够的信息来解释这一点——甚至你的PostgreSQL版本都没有 影响事务隔离和可见性的核心MVCC设计的bug会被报告到邮件列表中,但很少会消失,而且这些bug往往出现在通常不会遇到的古怪情况中 我见过的唯一一次死而复生的数据是: 用户一直在使用fsync=off运行,或

是否有人对使用PostgreSQL的旧持久性数据有问题。我最近做了一份报告,得到了两个不同的结果。我第二次运行报告时丢失了六条记录。

几乎完全可以肯定,问题出在您的代码中,或者您如何使用PostgreSQL。你没有给任何人提供足够的信息来解释这一点——甚至你的PostgreSQL版本都没有

影响事务隔离和可见性的核心MVCC设计的bug会被报告到邮件列表中,但很少会消失,而且这些bug往往出现在通常不会遇到的古怪情况中

我见过的唯一一次死而复生的数据是:

  • 用户一直在使用
    fsync=off
    运行,或者在关于fsync的存储上运行,并且他们在
    删除后崩溃并重新启动了机器。他们返回了一些
    DELETE
    d数据,以及一些有趣的损坏的表和索引。设置
    fsync=off
    基本上会告诉PostgreSQL“加快速度,我不在乎你是否破坏了我所有的数据”,所以这是一个完全有效的结果

  • 有人在一个标记为
    不可变的
    的函数上创建了一个索引,这个函数实际上并不是不可变的。这通常只会产生错误的结果,但在9.2的覆盖索引中,我怀疑它可能也会带来死而复生的数据

所以,老实说,这是你做错了。尝试发布一个更详细的新问题:

  • Pg版本
  • 你是如何运行报告的
  • DDL
  • SQL
  • 数据库工作负载是什么样的
  • 同时还发生了什么
  • 还有哪些客户

。。。等等,也许有人能帮上忙。

没有一个PostgreSQL是完全没有bug的。看看键盘和椅子之间的问题。@Darryl!哈!没有什么东西是没有bug的,而且邮件列表中有缓慢但稳定的报告流。也就是说,它们通常要么是打包/安装问题,要么是影响新功能的死角。基本数据处理中的错误几乎是,但并非完全是闻所未闻的。@user1681134您的问题缺乏足够的细节,任何人都无法有效地回答。