我们在 Google SQL 上有 PostgreSQL 实例(1 个主实例 + 1 个只读副本)。我们的 Django (1.11.12) 应用程序通过 PostGIS 引擎使用这些数据库。当我们尝试使用数据库时,我们看到了这个错误信息:
django.db.utils.OperationalError: canceling statement due to conflict with recovery
DETAIL: User query might have needed to see row versions that must be removed.
当我搜索解决方案时,他们通常会说我需要更改 hot_standby_feedback 标志。但正如您所知,Google SQL 服务对 settings 有一些限制。 .我无法设置标志。
我该如何解决这个问题?
最佳答案
如果“Google SQL”允许,您可以设置 max_standby_streaming_delay
到 -1
,以便在检测到冲突时延迟复制。
然后查询不会被取消,但如果应用更改会导致冲突,复制可能会滞后。
考虑获得一个“不受约束的”PostgreSQL。
关于django - 如何修复 Google SQL 上的 PostgreSQL 取消语句错误?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51442932/