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

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

文档版本比较

POSTGRESQL · VERSION COMPARE

PostgreSQL 9.3.4 发布变化

此版本的完整功能、修复与兼容性说明,以及其他版本的关联记录。

此版本的完整变化
此版本的完整变化

包括起始版本之后至目标版本的变化。大版本号表示该分支的首个版本。

完整发布变化

9.3.4

2014-03-20

导出 JSON ↓
21项变化功能、修复、改进
1个版本按版本分组
0CVE独立漏洞编号

9.3.4stable支持截止 2018-11-08

PostgreSQL 9.3.4

迁移与兼容性

对于运行 9.3.X 的用户,不需要进行转储/恢复。

不过,下面第一条变更日志修复的错误可能在备库服务器上造成了损坏数据。在安装此更新后,用新的基础备份重新初始化备库服务器可能是明智的。

不过,如果你是从早于 9.3.3 的版本升级,请参见第 E.23 节。

问题修复修复锁定已更新元组的 WAL 重放

变更

修复锁定已更新元组的 WAL 重放(Andres Freund、Álvaro Herrera)

这一错误导致索引扫描找不到已更新的行,使查询结果取决于是否使用索引扫描而不一致。后续处理可能导致约束冲突,因为之前更新的行不会再被后续的索引搜索找到,从而可能允许插入相互冲突的行。由于该错误位于 WAL 重放中,它只会在崩溃恢复期间或备库服务器上显现。重放不当的情况最常见于外键约束引用的表行与引用行的创建并发更新时。

改进无条件恢复 GIN 元页以避免残缺页风险

变更

无条件恢复 GIN 元页以避免残缺页风险(Heikki Linnakangas)

虽然这一疏忽理论上可能导致索引损坏,但实际上不太可能造成任何问题,因为 GIN 元页的活动部分小于标准的 512 字节磁盘扇区。

关联记录 (3)
改进避免在接收 NOTIFY 消息期间检查事务提交状态时的竞态条件

变更

避免在接收 NOTIFY 消息期间检查事务提交状态时的竞态条件(Marko Tiikkaja)

这防止了这样一种场景:足够快的客户端可能在通知者所做的数据库更新对接收者可见之前就响应通知。

关联记录 (3)
改进允许在 UPDATE 和 DELETE 命令中引用物化视图

变更

允许在 UPDATE 和 DELETE 命令中引用物化视图(Michael Paquier)

此前这类查询会因无法锁定物化视图中的行而失败。

改进允许正则表达式操作符被查询取消请求提前终止

变更

允许正则表达式操作符被查询取消请求提前终止(Tom Lane)

这防止了病态正则表达式长时间不可中断地锁死服务器进程的场景。

关联记录 (1)
改进移除试图允许 OVERLAPS 接受单元素行参数的错误代码

变更

移除试图允许 OVERLAPS 接受单元素行参数的错误代码(Joshua Yanovski)

这段代码从未正确工作过,而且该情况既未被 SQL 标准规定也未被记录,因此移除它似乎比修复它更好。

关联记录 (3)
改进避免在反解析规则或视图时获取超出 AccessShareLock 的锁

变更

避免在反解析规则或视图时获取超出 AccessShareLock 的锁(Dean Rasheed)

这一疏忽导致 pg_dump 对规则中作为 INSERT/UPDATE/DELETE 命令目标的表意外获取了 RowExclusiveLock 锁。虽然通常无害,但它可能干扰试图在这些表上获取例如 ShareLock 的并发事务。

关联记录 (3)
性能改进规划期间索引端点探测的性能

变更

改进规划期间索引端点探测的性能(Tom Lane)

此变更修复了当索引末尾存在大量尚未提交的行时的显著性能问题,这对于基于顺序赋值(如时间戳或序列生成的标识符)的索引是常见情况。

关联记录 (3)
改进当右侧是稳定表达式时,对 value IN (list) 和 value operator ANY (array) 表达式使用非默认的选择率估计

变更

当右侧是稳定表达式时,对 value IN (list) 和 value operator ANY (array) 表达式使用非默认的选择率估计(Tom Lane)

问题修复在 DROP DATABASE 期间删除正确的逐数据库统计文件

变更

在 DROP DATABASE 期间删除正确的逐数据库统计文件(Tomas Vondra)

此修复防止统计文件空间的永久泄漏。自升级到 PostgreSQL 9.3 以来执行过许多 DROP DATABASE 命令的用户,可能希望检查其统计目录,并删除与任何现有数据库不对应的统计文件。请注意 db_0.stat 不应删除。

问题修复修复 walsender 的 ping 逻辑,避免持续负载下不恰当的断开连接

变更

修复 walsender 的 ping 逻辑,避免持续负载下不恰当的断开连接(Andres Freund、Heikki Linnakangas)

如果 walsender 一直忙于发送 WAL 数据,它就不会向客户端发送 ping 消息;但它仍然期待收到 ping 响应,因此一旦wal_sender_timeout超时就会断开连接。

问题修复修复客户端为 pg_receivexlog 时 walsender 无法干净关闭的问题

变更

修复客户端为 pg_receivexlog 时 walsender 无法干净关闭的问题(Fujii Masao)

关联记录 (2)
改进在执行将被归档恢复跟随的崩溃恢复时,正确检查 WAL 级别和热备参数

变更

在执行将被归档恢复跟随的崩溃恢复时,正确检查 WAL 级别和热备参数(Heikki Linnakangas)

关联记录 (1)
问题修复修复崩溃后是否可以立即允许热备连接的测试

变更

修复崩溃后是否可以立即允许热备连接的测试(Heikki Linnakangas)

关联记录 (3)
改进新增只读参数data_checksums,用于显示是否启用了页校验和

变更

新增只读参数data_checksums,用于显示是否启用了页校验和(Heikki Linnakangas)

没有这个参数,很难确定校验和处理的状态。

改进在报告非 ERROR 消息期间防止中断

变更

在报告非 ERROR 消息期间防止中断(Tom Lane)

这可以防止因递归进入 syslog() 而导致的罕见服务器进程冻结,或许还能防止其他相关问题。

关联记录 (3)
问题修复修复 PL/Perl 返回组合结果(包括多 OUT 参数情况)时的内存泄漏

变更

修复 PL/Perl 返回组合结果(包括多 OUT 参数情况)时的内存泄漏(Alex Hunsaker)

关联记录 (2)
问题修复修复 \copy 从带外数据读取期间 psql 脚本行号跟踪的问题

变更

修复 \copy 从带外数据读取期间 psql 脚本行号跟踪的问题(Kumar Rajeev Rastogi、Amit Khandekar)

即使数据并非来自脚本文件,\copy ... from 也会为每个数据行递增脚本文件行号。这一失误导致同一脚本文件中稍后发生的任何错误报告了错误的行号。

关联记录 (1)
问题修复修复 contrib/postgres_fdw 以正确处理多个连接条件

变更

修复 contrib/postgres_fdw 以正确处理多个连接条件(Tom Lane)

这一疏忽可能导致把 WHERE 子句发送到远程服务器执行,即使并不确定这些子句在远程服务器上具有相同的语义(例如使用非内建操作符的子句)。查询可能照样成功,但也可能因远程服务器报错而失败,更糟的是可能静默地给出错误答案。

改进防止在较新的 Windows 版本上间歇性出现 “could not reserve shared memory region” 失败

变更

防止在较新的 Windows 版本上间歇性出现 “could not reserve shared memory region” 失败(MauMau)

关联记录 (3)
改进把时区数据文件更新为 tzdata 版本 2014a,以反映斐济和土耳其的夏令时法规变更,以及以色列和乌克兰的历史变更。

变更

把时区数据文件更新为 tzdata 版本 2014a,以反映斐济和土耳其的夏令时法规变更,以及以色列和乌克兰的历史变更。

关联记录 (3)
如何生成比较结果?

比较依据起始版本之后至目标版本的 PostgreSQL 发布说明。经核实的回补重复项会谨慎合并,保留每条原始说明;相关提交可能涉及独立变化,仍作为不同记录保留。

发布快照: 2026-09-26 · 安全快照: 2026-09-26

内容来自 PostgreSQL 发布说明。交互方式参考 pgversions.com 与 pgversionreport.