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

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

规划器内存优化把峰值从 9.3 GB 压到 6.1 GB RSS

子查询上拉会让 jointree 的搜索空间迅速膨胀,规划阶段的内存也跟着失控。Tomas Vondra 写了一组补丁,在连接路径生成、等价类处理以及归并连接和哈希连接过程中释放临时子列表,极端场景下峰值内存从 9.3 GB 降到 6.1 GB。Andrei Lepikhov 在评审中指出 list_concat() 创建的是数组而不是简单引用,同类问题可能散布在代码库各处。内存分析这边,Valgrind 的 massif 可用。

发布于 2026-09-10T10:59:43.111214Z · Tomas Vondra · pgsql-hackers
内存 性能 规划器

子查询上拉会让 jointree 的搜索空间迅速膨胀,规划阶段的内存也跟着失控。Tomas Vondra 写了一组补丁,在连接路径生成、等价类处理以及归并连接和哈希连接过程中释放临时子列表,极端场景下峰值内存从 9.3 GB 降到 6.1 GB。Andrei Lepikhov 在评审中指出 list_concat() 创建的是数组而不是简单引用,同类问题可能散布在代码库各处。内存分析这边,Valgrind 的 massif 可用。

子查询上拉会让 jointree 的搜索空间迅速膨胀,规划阶段的内存也跟着失控。Tomas Vondra 写了一组补丁,在连接路径生成、等价类处理以及归并连接和哈希连接过程中释放临时子列表,极端场景下峰值内存从 9.3 GB 降到 6.1 GB。Andrei Lepikhov 在评审中指出 list_concat() 创建的是数组而不是简单引用,同类问题可能散布在代码库各处。内存分析这边,Valgrind 的 massif 可用。

原始来源 ↗

来源记录
  • center.info_item · f9f96c290f6bab3f · 2026-10-03T04:08:35.169032Z
  • pgweb.info_item · f9f96c290f6bab3f · 2026-10-03T04:08:55.967155Z