发布说明

PostgreSQL 17.2

E.8. 17.2 发布 #

发布日期:. 2024-11-21

本次发布包含自 17.1 以来的少量修复。 有关 17 主版本中新特性的更多信息,请参见 Section E.10

E.8.1. 迁移到版本 17.2 #

对于运行 17.X 的用户,无需执行转储/恢复。

不过,如果你是从早于 17.1 的版本升级,请参见 Section E.9

E.8.2. 变更 #

  • 修复与 struct ResultRelInfo 协作的扩展的 ABI 破坏(Tom Lane) §

    上周的次版本发布无意中破坏了与 timescaledb 及若干其他扩展的二进制兼容性。现将受影响的结构恢复到先前大小,以便此类扩展无需重新构建。

  • 恢复 ALTER {ROLE|DATABASE} SET role 的功能(Tom Lane、Noah Misch) §

    针对 CVE-2024-10978 的修复意外导致:如果 role 的设置来自非交互式来源,包括先前的 ALTER {ROLE|DATABASE} 命令以及 PGOPTIONS 环境变量,它们就不会被应用。

  • 修复逻辑复制槽的 restart_lsn 可能回退的情况(Masahiko Sawada) §

    此前,重启逻辑复制有时会导致该槽的 restart point 被重新计算为比先前在 pg_replication_slots 中公布的值更旧。这很糟糕,因为例如 WAL 文件可能已经根据更晚的 restart_lsn 值被移除,此时复制就无法重新启动。

  • 避免在 pg_rewind 期间删除仍然需要的 WAL 文件(Polina Bungina、Alexander Kukushkin) §

    此前,在运气不好的情况下,pg_rewind 可能会从被 rewind 的降级主库中删除重要的 WAL 文件。特别是当这些文件已被标记为待归档,也就是已经创建了对应的 .ready 文件,但尚未真正归档时,就会发生这种情况。此时,新提升的节点由于这些文件已被回收而不再拥有它们,但降级节点在恢复时很可能仍需要这些文件。如果 pg_rewind 将其删除,那么恢复将不再可能。

  • 修复删除共享统计信息条目相关的竞争条件(Kyotaro Horiguchi、Michael Paquier) §

    这些 bug 可能导致统计信息数据丢失、断言失败,或出现 can only drop stats once 错误。

  • 在统计视图中统计 contrib/bloom 索引的索引扫描次数,例如 pg_stat_user_indexes.idx_scan 计数器(Masahiro Ikeda) §

  • 修复检查索引的 opclass 选项是否已变更时的崩溃(Alexander Korotkov) §

    如果表中存在带有非默认操作符类选项的索引,某些形式的 ALTER TABLE 会失败。

  • 避免正则表达式解析中因 NFA 子图断开而导致的断言失败(Tom Lane) §

    这个 bug 在非断言构建中似乎不会造成任何可见后果。