发布于 2026-09-10T10:59:48.578874Z · Amit Langote · PostgreSQL hackers

Amit Langote 发出针对 PG19 外键批量检查快速路径的 v2 补丁。先前的修复把批处理限制在顶层事务,Noah Misch 批评这在用 savepoint 时会掉性能,也不符合按子事务追踪资源的惯例。新版改为新增 AtEOSubXact_RI(),在每个缓存条目上记录子事务号。随后又发现缓存只以约束 OID 为键,导致同一约束的嵌套检查复用了外层条目,v2 把键改成约束 OID 加查询深度。
Amit Langote 发出针对 PG19 外键批量检查快速路径的 v2 补丁。先前的修复把批处理限制在顶层事务,Noah Misch 批评这在用 savepoint 时会掉性能,也不符合按子事务追踪资源的惯例。新版改为新增 AtEOSubXact_RI(),在每个缓存条目上记录子事务号。随后又发现缓存只以约束 OID 为键,导致同一约束的嵌套检查复用了外层条目,v2 把键改成约束 OID 加查询深度。
来源记录
- center.info_item · ab22e6d17d9407d7 · 2026-10-03T04:08:35.169032Z
- pgweb.info_item · ab22e6d17d9407d7 · 2026-10-03T04:08:55.967155Z