postgresql - DEALLOCATE pdo_stmt 需要很长时间(几天),这正常吗?

标签 postgresql laravel amazon-web-services amazon-rds postgresql-9.3

我正在调试我的 PostgreSQL 数据库,发现 7 个针对“DEALLOCATE pdo_stmt”的查询已经运行了 15 天。

阅读 PostgreSQL 文档,我看到这些查询应该在 session 结束后取消分配准备好的语句,但我无法相信它会花费这么多时间。

此外,公司的其他项目发现相同的查询运行了异常长的时间。

数据库托管在 AWS RDS 上,并使用 Laravel 5.2 访问。

我运行的查询是:

SELECT
 pid,
 now() - query_start as duration,
 query,
 state
FROM pg_stat_activity
 where now() - query_start  > interval '2 minutes'
 order by now() - query_start desc

结果是:

10169   15 days 23:52:04.697072 DEALLOCATE pdo_stmt_00000003    idle
10170   15 days 23:52:04.64288  DEALLOCATE pdo_stmt_00000003    idle
10171   15 days 23:52:04.616907 DEALLOCATE pdo_stmt_00000003    idle
10172   15 days 23:52:04.60968  DEALLOCATE pdo_stmt_00000003    idle
10174   15 days 23:52:04.604393 DEALLOCATE pdo_stmt_00000003    idle
10173   15 days 23:52:04.596357 DEALLOCATE pdo_stmt_00000003    idle
10175   15 days 23:52:04.591835 DEALLOCATE pdo_stmt_00000003    idle

最佳答案

没有什么可担心的。您没有看到当前正在运行的语句,只有在该数据库 session 中执行的最新语句(并且可能,正如您正确假设的那样,只花费了几毫秒)。

参见 the documentation state 列的可能值。

关于postgresql - DEALLOCATE pdo_stmt 需要很长时间(几天),这正常吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47929471/

相关文章:

amazon-web-services - 实例运行时 AWS 实例的私有(private) IP 是否会发生变化?

sql - PostgreSQL 获取数据作为数据透视表

sql - 如何从数据中返回 jsonb 数组和对象数组?

php - 异常 'BadMethodCallException' 消息 'Method handleQueuedMessage does not exist.'

javascript - AngularJS 多个 url 参数 (ui-router)

amazon-web-services - 无法为 AWS Route 53 上的子域创建 CAA 记录

postgresql - 选择包含值的列上的所有行

sql - 如何在 PostgreSQL 中对包含单词和数字的 VARCHAR 列进行排序?

php - get请求时是否有必要在laravel Controller 中使用htmlspecialchars

node.js - AWS EB Node.JS 日志到 CloudWatch