类型: integer
默认: 0 (0ms)
最低限度: 0 (0ms)
最大: 2147483647 (2147483647ms)
单元: milliseconds (ms)
上下文: user
重新开始: false

中止任何使用了超过指定时间量的语句。 如果log_min_error_statement被设置为ERROR或更低,语句如果超时也会被记录。 如果指定值时没有单位,则以毫秒为单位。一个零值(默认)将禁用超时。

超时从命令到达服务器的时间开始计算,一直到它被服务器完成为止。 在扩展查询协议中,当任何与查询相关的消息(解析、绑定、执行、描述)到达时,超时就开始运行,并且可以通过执行完成或同步消息来取消超时。

我们不推荐在postgresql.conf中设置statement_timeout,因为它会影响所有会话。

建议 [EN]

Defaults to 0, meaning no timeout. For most web applications, it's a good idea to set a default timeout, such as 60s to prevent runaway queries from bogging the server. If set, though, you need to remember to set (at the ROLE or session level) a higher statement_timeout for expected long-running maintenance or batch operations.

条评论