↑↓ 选择↵ 打开⌫ 切换范围完整搜索

PG.CENTER 连接 PostgreSQL 文档、百科与生态知识。由 Pigsty 维护。

PgBouncer 事务池中的租户状态可能跨请求残留 RSS

事务结束会归还数据库连接,却不意味着所有会话状态都已清空。一组可复现测试梳理了 PgBouncer 事务池中的租户变量、角色、搜索路径、临时表与会话锁:普通 SET 留下的状态可能被下一个借用者看到。文章将租户隔离落实到显式事务和 SET LOCAL,并要求行级安全策略在上下文缺失时拒绝访问。还需分别处理临时表与锁的生命周期,不能把连接池视为租户隔离边界;协议级预备语句的跟踪也不能替代这些约束。

发布于 2026-09-22T01:07:45.948356Z · Mikhail Shytsko · Seedfast
多租户 运维 连接池

事务结束会归还数据库连接,却不意味着所有会话状态都已清空。一组可复现测试梳理了 PgBouncer 事务池中的租户变量、角色、搜索路径、临时表与会话锁:普通 SET 留下的状态可能被下一个借用者看到。文章将租户隔离落实到显式事务和 SET LOCAL,并要求行级安全策略在上下文缺失时拒绝访问。还需分别处理临时表与锁的生命周期,不能把连接池视为租户隔离边界;协议级预备语句的跟踪也不能替代这些约束。

事务结束会归还数据库连接,却不意味着所有会话状态都已清空。一组可复现测试梳理了 PgBouncer 事务池中的租户变量、角色、搜索路径、临时表与会话锁:普通 SET 留下的状态可能被下一个借用者看到。文章将租户隔离落实到显式事务和 SET LOCAL,并要求行级安全策略在上下文缺失时拒绝访问。还需分别处理临时表与锁的生命周期,不能把连接池视为租户隔离边界;协议级预备语句的跟踪也不能替代这些约束。

原始来源 ↗

来源记录
  • pgweb.info_item · 50af7146107b8507 · 2026-10-03T04:08:55.967155Z