- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我们可以为 Client 设置 2 个超时时间:
statement_timeout
: 查询语句超时前的毫秒数,默认不超时 query_timeout
查询调用超时前的毫秒数,默认为无超时statement_timeout
将被传递到数据库(参见 postgres-docs:statement_timeout )并且当一条语句花费的时间比这更长时,数据库将中止查询并返回错误 query_timeout
一无所知.这由驱动器 ( node-postgres
) 处理。当达到此超时时,node-postgres
将停止监听响应,但数据库可能仍在执行查询 try {
await client.query('BEGIN')
const queryText = 'INSERT INTO users(name) VALUES($1) RETURNING id'
const res = await client.query(queryText, ['brianc'])
const insertPhotoText = 'INSERT INTO photos(user_id, photo_url) VALUES ($1, $2)'
const insertPhotoValues = [res.rows[0].id, 's3.bucket.foo']
await client.query(insertPhotoText, insertPhotoValues)
await client.query('COMMIT')
} catch (e) {
await client.query('ROLLBACK')
throw e
}
query()
5 次:并根据
query()
应用查询/语句超时称呼。
BEGIN
也是如此/
COMMIT
查询具有与
INSERT
相同的超时时间查询,对吗?
最佳答案
在使用 pg-promise 进行了一些测试后,我得出了这个结论:query-timeout
应该比 statement-timeout
稍长
细节
仅查询超时
query-timeout
= 10 秒 statement-timeout
= 未定义 pgsleep(60)
( sleep 60秒)
BEGIN
语句发送到数据库 pgsleep(60)
发送到数据库 ROLLBACK
Query read timeout error
query-timeout
= 未定义 statement-timeout
= 10 秒 pgsleep(60)
( sleep 60秒)
BEGIN
语句发送到数据库 pgsleep(60)
发送到数据库 57014
:canceling statement due to statement timeout
statement-timeout
并设置
query-timeout
稍长一点,以防数据库无法发回错误(我想这可能是存在例如网络问题的情况)
关于pg-promise - 如何设置与 statement_timeout 相关的 query_timeout?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59155572/
当我的网络用户突然激增时,一些语句开始无限期地排队,即使我设置了超时,如: SET STATEMENT_TIMEOUT TO 5000; SELECT get_user_properties(1234
我想设置 postgres statement_timeout对于个人迁移。我似乎无法做到这一点。这是我的实验: def change execute <<~SQL SET LOCAL s
我有一个需求,在postgresql中指定的时间限制内执行查询操作。如果查询没有在那个时间限制内执行,我们需要捕获一个异常/一个 Action ,并且需要杀死所有其他阻止这个查询操作发生的操作,然后执
假设我有: untimedStatement = connection.createStatement() ; timedStatement = connection.createStatement(
在事务模式下使用 pgBouncer 似乎是在任何给定时间减少事件连接数的最佳方式,但它也带来了一个我不确定如何有效解决的问题。 假设您希望在数据库级别设置 5 分钟的 statement_timeo
在事务模式下使用 pgBouncer 似乎是在任何给定时间减少事件连接数的最佳方式,但它也带来了一个我不确定如何有效解决的问题。 假设您希望在数据库级别设置 5 分钟的 statement_timeo
我正在使用 Django 1.10 和 PostgreSQL 数据库。我想弄清楚我是否可以从 Django 设置 statement_timeout。似乎我不能像 connect_timeout 那样
我们可以为 Client 设置 2 个超时时间: statement_timeout : 查询语句超时前的毫秒数,默认不超时 query_timeout查询调用超时前的毫秒数,默认为无超时 我是这样理
我为我的 Postgres 数据库中的用户将 statement_timeout 设置为 10000(10 秒)。但是,当我查看 pg_stat_activity 中的事件查询时,我发现查询运行了超过
是否可以为 db (Postgres) 设置 statement_timeout 仅用于 Ruby on Rails 中的 web 查询(vs sidekiq workers/jobs)?原因是 He
我已经在 database.yml 中将我的 statement_timeout 配置为几秒钟,但是我的应用程序中有一些昂贵的查询,需要更长的查询执行时间。在每个查询级别上实现此目标的推荐方法是什么?
我正在尝试设置 statement_timeout。我在 database.yml 中尝试了这两种设置像这样的文件 variables: statement_timeout: 1000 和这个 A
我是一名优秀的程序员,十分优秀!