57014: query_canceled
PostgreSQL含义
查询已被取消。通常由 statement_timeout 到期,或用户/客户端发出的取消(pg_cancel_backend、驱动取消)引起。
原因
超出 statement_timeout、通过 pg_cancel_backend 取消,或应用/客户端发送了取消请求。类似情况有不同的代码:lock_timeout 到期返回 55P03,idle_in_transaction_session_timeout 返回 25P03(FATAL),hot standby 上因复制冲突引起的取消返回 40001(某些情况下为 40P01)。
解决方法
如果查询确实耗时较长,对其调优(EXPLAIN ANALYZE、索引、执行计划)。如果超时设置过低,为相关会话/角色调整 statement_timeout。主动取消无需处理。由锁和备库冲突引起的取消,请参阅 55P03 和 40001 条目。