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

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

GIN VACUUM 可能把内部页当叶子页,造成索引损坏 RSS

Peter Geoghegan 报告了一个影响所有稳定分支的 GIN 索引损坏:ginVacuumPostingTreeLeaves() 把共享锁升级为排他锁后没有重新检查页面是否仍是叶子页,VACUUM 可能把内部页当叶子页处理,漏掉该清除的死 TID。Andrey Borodin 确认这是真实的数据损坏,追溯到 fd83c83d0。另一个缺陷是 ginInsertCleanup 只在 ginbulkdelete 的第一遍被调用。

发布于 2026-09-10T10:59:48.352467Z · Peter Geoghegan · PostgreSQL hackers
GIN VACUUM 数据损坏

Peter Geoghegan 报告了一个影响所有稳定分支的 GIN 索引损坏:ginVacuumPostingTreeLeaves() 把共享锁升级为排他锁后没有重新检查页面是否仍是叶子页,VACUUM 可能把内部页当叶子页处理,漏掉该清除的死 TID。Andrey Borodin 确认这是真实的数据损坏,追溯到 fd83c83d0。另一个缺陷是 ginInsertCleanup 只在 ginbulkdelete 的第一遍被调用。

Peter Geoghegan 报告了一个影响所有稳定分支的 GIN 索引损坏:ginVacuumPostingTreeLeaves() 把共享锁升级为排他锁后没有重新检查页面是否仍是叶子页,VACUUM 可能把内部页当叶子页处理,漏掉该清除的死 TID。Andrey Borodin 确认这是真实的数据损坏,追溯到 fd83c83d0。另一个缺陷是 ginInsertCleanup 只在 ginbulkdelete 的第一遍被调用。

原始来源 ↗

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