gpt4 book ai didi

postgresql - Postgres 返回 future 交易的错误

转载 作者:行者123 更新时间:2023-11-29 12:04:34 24 4
gpt4 key购买 nike

我目前正在使用 pgbouncer 作为我的连接池从 MySQL 迁移到 postgres。

我们从 postgres 选择/插入/更新/删除大量数据,并且所有数据都来自远程源,因此我们尝试在插入之前使数据质量尽可能好,但有时会漏掉一些不良数据。

这会导致 postgres 报告当前事务被中止,命令被忽略直到事务 block 结束

这很好,除了通过 pgbouncer 的连接会为每个查询报告这个错误。如果我直接连接到 postgres 而不是 pgbouncer,我也会得到相同的逻辑。我希望它能够回滚导致此问题的任何事务。

有没有办法回滚并继续正常工作?我读过的所有内容都只是说修复查询,但在这种情况下并不总是可行。

最佳答案

您需要使用 ROLLBACK命令。这将撤消自上次 BEGIN TRANSACTIONSTART TRANSACTION 以来的所有内容。请注意,事务不会嵌套;如果您在没有提交的情况下开始了多个事务,这将回滚最外层的事务。

这将使您进入自动提交模式。您可能想要发出一个新的 BEGIN TRANSACTION 命令来打开一个新事务。

您还应该能够 ROLLBACK TO SAVEPOINT ,如果您有错误之前的保存点。

(如果可能的话,最好只修复查询,但根据您正在做的事情,这可能会非常困难。)

关于postgresql - Postgres 返回 future 交易的错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33739372/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com