AI 摘要
PostgreSQL出现“canceling statement due to statement timeout”错误,因SQL执行超时(默认60秒)。解决方案包括:会话级别使用`SET statement_timeout TO 0`取消超时,或用户级别通过`ALTER USER username SET statement_timeout TO 600000`调整为10分钟,避免语句被强制终止。
问题现象
某SQL语句执行超过一分钟,返回如下报错信息:
ERROR: canceling statement due to statement timeoutTime.原因分析
当语句执行时间超过statement_timeout参数设置的时间时,该语句将会报错并退出执行。
目前数据库设置的是一分钟超时。
处理方法
连接数据库,通过 SQL 命令修改 statement_timeout 参数。
- 使用SET语句修改(会话级别):
SET statement_timeout TO 0;- 使用ALTER ROLE语句修改(用户级别)
ALTER USER username SET statement_timeout TO 600000;
评论 (0)