E.1. 11.8 版

发布日期: 2020-05-14

此版本包含自 11.7 起的各种修复程序。有关主要版本 11 中新功能的信息,请参阅Section E.9

E.1.1. 迁移到版本 11.8

运行 11.X 的用户不需要转储/还原。

但是,如果要从 11.6 之前的版本升级,请参见Section E.3

E.1.2. Changes

非表达式索引列在创建时始终会复制其表列的attstorage属性。完成ALTER TABLE ... SET STORAGE后更新它们,以保持一致性。

以前,ALTER TABLE失去了对CLUSTER使用哪个索引的跟踪。

这样可以避免在竞争条件下发生故障,在这种情况下,另一个会话正在删除某些相同的对象。

某些错误情况将被报告为“意外的节点类型”等,而不是预期的消息。

对于索引操作类具有不寻常的相等性概念,这只会是一个问题,但是从理论上讲是错误的,因此请检查一下。

pg_stat_progress_*视图的基本功能尚未获得此备忘。

此修补程序重新定义了该视图,以便可以将约束表名的外部WHERE子句下推到视图中,从而仅对属于感兴趣表的触发器(而不是数据库中的所有触发器)进行计算。在具有许多触发器的数据库中,这将对该形式的查询产生明显的速度差异。由于 v11 之前的工作方式是这样,所以这是潜在的性能下降。认为这是一个问题的用户可以通过替换视图定义(或者,也许只是删除并重新安装整个information_schema模式)来解决此问题。

当实现为 GiST 或 GIN 索引搜索时,诸如!(foo<->bar)之类的查询无法找到匹配的行。

较小的gin_fuzzy_search_limit值可能会由于无意中多次重新扫描同一索引页而导致意外的运行缓慢。另一个代码路径根本无法应用预期的过滤,可能返回了太多的值。

由于 bit number 参数仅为int4,因此无法使用这些函数访问长bytea的前 256MB 以外的位。我们将在 v13 中将参数扩展为int8,但是与此同时,允许这些函数对长bytea的初始子字符串起作用。

如果在看到文件的目录条目和尝试对其进行stat()之间删除文件时,这可以防止出现竞争情况失败。

如果查询重新执行一个哈希子计划足够多次,此错误可能会导致严重的内存膨胀。

这可能会导致关于VACUUM何时可以跳过索引清除扫描的微妙错误决定;尽管看起来可能没有明显的用户可见效果。

仅当超级用户手动删除临时模式时,才会出现这种危险。这不是正常的做法,但应该可以。

准备在崩溃恢复期间进行归档的 WAL 段可能被回收而没有归档。

这可以消除许多尝试从归档存储中获取不存在的 WAL 文件的尝试,如果归档访问速度很慢,这很有用。

在各种情况下都可以正常达到此条件,因此请删除该检查。

这可能导致 walsender 稍后卡住以 await 锁定。

synchronous_standby_names设置中进行更改期间,会出现一个窗口,在该窗口中可能会做出有关是否可以释放 await 同步提交的事务的错误决定。如果退出 walsender 程序并立即由另一个替换,则存在同样错误决定的另一个危险。

此争用条件可能允许将不正确的热备用反馈消息发送回主服务器,从而可能使VACUUM在主服务器上运行得太早。

连接启动期间的证书验证可能会泄漏一些内存。如果 Client 端进程在其生命周期中打开了许多数据库连接,这将成为一个问题。

pg_dump 以前忽略的依赖项是通过这种方式添加的,导致它们在转储/恢复或 pg_upgrade 期间被遗忘。

这将事件触发器可能干扰其他对象恢复的风险降至最低。

这样的子目录并不 true 属于我们的数据库集群,因此不能进行处理。

这样的 XID 现在将报告为负整数,虽然不是很好,但是可以抛出错误。 v13 会将输出参数扩展为int8,以提供更清晰的报告。

如果 pkg-config 不存在或不了解 libxml2,我们仍然像以前一样查询 xml2-config。

通过将 xml2-config 放入PATH,此更改可能会破坏试图使 PostgreSQL 使用非默认版本的 libxml2 的构建过程。而是将XML2_CONFIG设置为指向非默认的 xml2-config。该方法适用于旧的或较新的 PostgreSQL 版本。

America/Godthab 区域已重命名为 America/Nuuk 以反映当前英语用法;但是,旧名称仍然可以用作兼容性链接。

另外,更新 initdb 的已知 Windows 时区名称列表以包括最近添加的内容,从而提高了它将正确转换该平台上的系统时区设置的几率。

上一章 首页 下一章