发布于 2026-09-10T10:59:47.37654Z · Mihail Nikalayeu · PostgreSQL hackers

两个属于「更多代码路径改用流式读」系列的提交,凑在一起会出问题。Mihail Nikalayeu 报告,其中一个提交缓存了元页指针,而 hashbulkdelete() 里调用 read_stream_begin_relation() 可能让它失效:调用链经表空间查找触发系统表扫描,进而处理失效消息并释放已缓存的指针,最终引用到无效的块号。他给出的修复只需重排少量代码,同时建议考虑更普遍的防护。该缺陷只影响主干。
两个属于「更多代码路径改用流式读」系列的提交,凑在一起会出问题。Mihail Nikalayeu 报告,其中一个提交缓存了元页指针,而 hashbulkdelete() 里调用 read_stream_begin_relation() 可能让它失效:调用链经表空间查找触发系统表扫描,进而处理失效消息并释放已缓存的指针,最终引用到无效的块号。他给出的修复只需重排少量代码,同时建议考虑更普遍的防护。该缺陷只影响主干。
来源记录
- center.info_item · 787e012d0bd7f069 · 2026-10-03T04:08:35.169032Z
- pgweb.info_item · 787e012d0bd7f069 · 2026-10-03T04:08:55.967155Z