文档版本比较
POSTGRESQL · VERSION COMPARE
PostgreSQL 9.4.0 发布变化
此版本的完整功能、修复与兼容性说明,以及其他版本的关联记录。
包括起始版本之后至目标版本的变化。大版本号表示该分支的首个版本。
从数据库输出识别起始版本
完整发布变化
9.4.0
2014-12-18
9.4.0stable支持截止 2020-02-13
PostgreSQL 9.4
迁移与兼容性
兼容性收紧对多维数组输入的检查
兼容性
收紧对多维数组输入的检查(Bruce Momjian)
此前,以单元素子数组开头的输入数组字符串后面可以包含多元素子数组,例如'{{1}, {2,3}}'::int[]会被接受。
兼容性在将date、timestamp或timestamptz类型的值转换为JSON时,按符合 ISO 8601 的格式呈现这些值
兼容性json#>text[]路径提取操作符现在在数组为空时返回其左操作数输入而非 NULL
兼容性
json#>text[]路径提取操作符现在在数组为空时返回其左操作数输入而非 NULL(Tom Lane)
这与该操作表示对简单字段/元素提取操作符->应用零次的概念一致。类似地,带空数组的json#>>text[]只是把其左操作数输入强制转换为文本。
兼容性JSON字段/元素/路径提取操作符的极端情况现在返回 NULL 而不是抛出错误
兼容性
JSON字段/元素/路径提取操作符的极端情况现在返回 NULL 而不是抛出错误(Tom Lane)
例如,对 JSON 数组应用字段提取现在得到 NULL 而不是错误。这更一致(因为诸如字段不存在等可比情况此前就已返回 NULL),而且使创建使用这些操作符的表达式索引变得安全,因为它们现在不会对任何有效的 JSON 输入抛出错误。
兼容性使to_timestamp()和to_date()格式串中连续的空白字符消费输入串中相应数量的字符(无论是否空白),然后在非FX模式下视情况消费相邻空白
兼容性
使to_timestamp()和to_date()格式串中连续的空白字符消费输入串中相应数量的字符(无论是否空白),然后在非FX模式下视情况消费相邻空白(Jeevan Chalke)
此前,非FX格式串中的连续空白字符表现得像单个空白字符,并消费输入串中所有相邻空白。例如,此前三个空格的格式串在' 12'中只会消费第一个空格,但现在会消费全部三个字符。
兼容性修复ts_rank_cd()使其忽略已去除位置信息的词位
兼容性
修复ts_rank_cd()使其忽略已去除位置信息的词位(Alex Hill)
此前,已去除位置信息的词位被当作具有默认位置处理,产生用处可疑的排名。
兼容性对于声明为接受VARIADIC "any"的函数,标记为VARIADIC的实际参数必须是可确定数组类型
兼容性
对于声明为接受VARIADIC "any"的函数,标记为VARIADIC的实际参数必须是可确定数组类型(Pavel Stehule)
此类参数不能再写成不带修饰的字符串字面量或NULL;现在需要转换为适当的数组数据类型。注意这不影响未标记VARIADIC的参数。
兼容性确保整行变量向关注组合参数内列名的函数暴露预期的列名
兼容性
确保整行变量向关注组合参数内列名的函数暴露预期的列名(Tom Lane)
现在,像row_to_json(tab.*)这样的结构总是输出与调用处表tab可见的列别名匹配的列名。在以前的发行版中,输出的列名有时是表的实际列名,而不管查询中指派了什么别名。
兼容性DISCARD现在还会丢弃与序列相关的状态
兼容性
DISCARD现在还会丢弃与序列相关的状态(Fabrízio de Royes Mello、Robert Haas)
兼容性将EXPLAIN ANALYZE输出中的“total runtime”更名为“execution time”
兼容性
将EXPLAIN ANALYZE输出中的“total runtime”更名为“execution time”(Tom Lane)
既然规划时间也一并报告,以前的名称容易引起混淆。
兼容性SHOW TIME ZONE现在以POSIX时区格式输出简单的数字 UTC 偏移
兼容性
SHOW TIME ZONE现在以POSIX时区格式输出简单的数字 UTC 偏移(Tom Lane)
此前,此类时区设置显示为interval值。作为简单字符串传递时,新的输出能被SET TIME ZONE正确解释,而旧输出需要特殊处理才能被正确重新解析。
兼容性支持更新外部表的外部数据包装器必须考虑可能存在的AFTER ROW触发器
兼容性
支持更新外部表的外部数据包装器必须考虑可能存在的AFTER ROW触发器(Noah Misch)
当存在AFTER ROW触发器时,更新操作必须返回表的所有列,因为触发器可能检查其中任意或全部列。此前外部表从不带触发器,因此 FDW 可能优化掉对RETURNING子句(若有)中未提及列的获取。
兼容性阻止CHECK约束引用系统列,tableoid除外
兼容性
阻止CHECK约束引用系统列,tableoid除外(Amit Kapila)
此前此类检查约束是被允许的,但它们常常在还原期间导致错误。
兼容性在指定了多个目标参数时,使用最后指定的恢复目标参数
兼容性
在指定了多个目标参数时,使用最后指定的恢复目标参数(Heikki Linnakangas)
此前,recovery_target_参数之间存在未写入文档的优先顺序。xxx
兼容性在 Windows 上自动保留用户提供的命令串中的引号
兼容性
在 Windows 上自动保留用户提供的命令串中的引号(Heikki Linnakangas)
自行处理引号保留的用户命令可能需要调整。archive_command、restore_command以及COPY TO/FROM PROGRAM中使用的命令很可能受此影响。
兼容性移除目录列pg_class.reltoastidxid
兼容性
移除目录列pg_class.reltoastidxid(Michael Paquier)
兼容性移除目录列pg_rewrite.ev_attr
兼容性
移除目录列pg_rewrite.ev_attr(Kevin Grittner)
逐列规则自PostgreSQL 7.3 起就不再支持。
兼容性移除对Kerberos认证的原生支持(--with-krb5等)
兼容性
移除对Kerberos认证的原生支持(--with-krb5等)(Magnus Hagander)
使用Kerberos认证的受支持方式是通过GSSAPI。原生代码自PostgreSQL 8.3 起已被弃用。
兼容性在PL/Python中,像处理底层数组类型一样处理域于数组的类型
兼容性
在PL/Python中,像处理底层数组类型一样处理域于数组的类型(Rodolfo Campero)
此前此类值被当作字符串处理。
兼容性使 libpq 的PQconnectdbParams()和PQpingParams()函数把零长度字符串按默认值处理
兼容性
使 libpq 的PQconnectdbParams()和PQpingParams()函数把零长度字符串按默认值处理(Adrian Vondendriesch)
此前,这些函数只在某些情况下把零长度字符串值视为选择默认值。
兼容性将intarray模块返回的空数组改为零维数组
兼容性
将intarray模块返回的空数组改为零维数组(Bruce Momjian)
此前,空数组作为零长度一维数组返回,其文本表示与零维数组({})看起来相同,但在数组操作中的行为不同。intarray在此领域的行为现在与内置数组操作符一致。
兼容性pg_upgrade现在使用-U或--username指定用户名
兼容性
pg_upgrade现在使用-U或--username指定用户名(Bruce Momjian)
此前该选项拼作-u或--user,但这与其他工具不一致。
新功能允许动态注册、启动和终止后台工作进程
服务器
允许动态注册、启动和终止后台工作进程(Robert Haas)
新的worker_spi模块展示了此功能的使用示例。
新功能允许动态分配共享内存段
服务器
允许动态分配共享内存段(Robert Haas、Amit Kapila)
此功能在test_shm_mq模块中有演示。
新功能在崩溃恢复或立即关闭期间,向未及时关闭的子进程发送不可捕获的终止信号(SIGKILL)
服务器
在崩溃恢复或立即关闭期间,向未及时关闭的子进程发送不可捕获的终止信号(SIGKILL)(MauMau, Álvaro Herrera)
这减少了postmaster关闭后遗留孤儿子进程的可能性,同时确保在某些子进程已经“卡住”时崩溃恢复仍能继续。
新功能改进数据库系统标识符的随机性
服务器
改进数据库系统标识符的随机性(Tom Lane)
新功能使VACUUM向统计信息收集器正确报告已死但尚不能移除的行
服务器
使VACUUM向统计信息收集器正确报告已死但尚不能移除的行(Hari Babu)
此前这些行被报告为活行。
新功能减小GIN索引的大小
服务器 / 索引
减小GIN索引的大小(Alexander Korotkov、Heikki Linnakangas)
通过pg_upgrade升级的索引仍能正常工作,但仍是旧的、较大的GIN格式。使用REINDEX可以按新格式重建旧的 GIN 索引。
新功能提高多键 GIN 查找的速度
服务器 / 索引
提高多键 GIN 查找的速度(Alexander Korotkov、Heikki Linnakangas)
问题修复修复 B-tree 页删除中罕见的竞态条件
服务器 / 索引
修复 B-tree 页删除中罕见的竞态条件(Heikki Linnakangas)
新功能使被中断的 B-tree 页分裂的处理更加健壮
服务器 / 索引
使被中断的 B-tree 页分裂的处理更加健壮(Heikki Linnakangas)
性能允许多个后端并发插入WAL缓冲区
服务器 / 总体性能
允许多个后端并发插入WAL缓冲区(Heikki Linnakangas)
这改进了并行写入性能。
性能有条件地只把已更新行的修改部分写入 WAL
服务器 / 总体性能
有条件地只把已更新行的修改部分写入 WAL(Amit Kapila)
性能改进用作窗口函数的聚集函数的性能
服务器 / 总体性能
改进用作窗口函数的聚集函数的性能(David Rowley、Florian Pflug、Tom Lane)
性能提高使用 numeric 状态值的聚集的速度
服务器 / 总体性能
提高使用 numeric 状态值的聚集的速度(Hadi Moshayedi)
性能当表被CLUSTER或 VACUUM FULL 重写时,尝试冻结元组
服务器 / 总体性能
当表被CLUSTER或 VACUUM FULL 重写时,尝试冻结元组(Robert Haas、Andres Freund)
这可以避免将来再冻结这些元组的需要。
性能提高在同一会话中访问许多不同序列的速度
服务器 / 总体性能
提高在同一会话中访问许多不同序列的速度(David Rowley)
性能提高排序和 B-tree 索引构建期间内存中持有元组数量的硬限制
服务器 / 总体性能
提高排序和 B-tree 索引构建期间内存中持有元组数量的硬限制(Noah Misch)
性能减少 PL/pgSQL DO块分配的内存
服务器 / 总体性能
减少 PL/pgSQL DO块分配的内存(Tom Lane)
性能使规划器更激进地从混合的 AND/OR 子句中提取限制子句
服务器 / 总体性能
使规划器更激进地从混合的 AND/OR 子句中提取限制子句(Tom Lane)
性能禁止把易变 WHERE 子句下推到 DISTINCT 子查询中
服务器 / 总体性能
禁止把易变 WHERE 子句下推到 DISTINCT 子查询中(Tom Lane)
下推 WHERE 子句整体上可能产生更高效的计划,但代价是该子句的求值次数会多于查询文本所暗示的次数;因此若子句包含任何易变函数则不这样做。
性能自动调整系统目录缓存的大小
服务器 / 总体性能
自动调整系统目录缓存的大小(Heikki Linnakangas)
这减少了只访问少量表的会话的内存消耗,并改进了访问大量表的会话的性能。
新功能新增pg_stat_archiver系统视图以报告 WAL 归档器的活动
服务器 / 监控
新增pg_stat_archiver系统视图以报告 WAL 归档器的活动(Gabriele Bartolini)
新功能为pg_stat_all_tables及相关系统视图新增 n_mod_since_analyze 列
服务器 / 监控
为pg_stat_all_tables及相关系统视图新增 n_mod_since_analyze 列(Mark Kirkwood)
这些列显示了系统对表上次ANALYZE以来已更改元组数量的估计。该估计驱动何时自动分析的决策。
新功能为系统视图pg_stat_activity新增 backend_xid 和 backend_xmin 列,并为pg_stat_replication新增 backend_xmin 列
服务器 / 监控
为系统视图pg_stat_activity新增 backend_xid 和 backend_xmin 列,并为pg_stat_replication新增 backend_xmin 列(Christian Kruse)
新功能新增对 SSL ECDH 密钥交换的支持
服务器 / SSL
新增对 SSL ECDH 密钥交换的支持(Marko Kreen)
这允许使用椭圆曲线密钥进行服务器认证。此类密钥比 RSA 密钥更快且安全性更好。新增配置参数ssl_ecdh_curve控制用于 ECDH 的曲线。
新功能改进ssl_ciphers的默认设置
服务器 / SSL
改进ssl_ciphers的默认设置(Marko Kreen)
新功能默认情况下,现在由服务器而非客户端控制 SSL 密码的偏好顺序
服务器 / SSL
默认情况下,现在由服务器而非客户端控制 SSL 密码的偏好顺序(Marko Kreen)
此前,ssl_ciphers指定的顺序通常被忽略,转而采用客户端默认值,而大多数 PostgreSQL 客户端的默认值不可配置。如有需要,可以通过新的配置参数ssl_prefer_server_ciphers恢复以前的行为。
新功能使log_connections显示 SSL 加密信息
服务器 / SSL
使log_connections显示 SSL 加密信息(Andreas Kunert)
新功能改进 SSL 重新协商的处理
服务器 / SSL
改进 SSL 重新协商的处理(Álvaro Herrera)
新功能新增 SQL 命令ALTER SYSTEM,用于更改 postgresql.conf 配置文件条目
服务器 / 服务器设置
新增 SQL 命令ALTER SYSTEM,用于更改 postgresql.conf 配置文件条目(Amit Kapila)
此前此类设置只能通过手工编辑 postgresql.conf 来更改。
新功能新增autovacuum_work_mem配置参数,以控制自动清理工作进程使用的内存量
服务器 / 服务器设置
新增autovacuum_work_mem配置参数,以控制自动清理工作进程使用的内存量(Peter Geoghegan)
新功能新增huge_pages参数,允许在 Linux 上使用大内存页
服务器 / 服务器设置
新增huge_pages参数,允许在 Linux 上使用大内存页(Christian Kruse、Richard Poole、Abhijit Menon-Sen)
这可以改进大内存系统上的性能。
新功能新增max_worker_processes参数,以限制后台工作进程的数量
服务器 / 服务器设置
新增max_worker_processes参数,以限制后台工作进程的数量(Robert Haas)
这有助于把备库服务器配置为拥有所需数量的工作进程(与主库相同)。
新功能新增仅限超级用户的session_preload_libraries参数,用于在会话启动时加载库
服务器 / 服务器设置
新增仅限超级用户的session_preload_libraries参数,用于在会话启动时加载库(Peter Eisentraut)
与local_preload_libraries不同,此参数可以加载任何共享库,而不仅仅是 $libdir/plugins 目录中的库。
新功能新增wal_log_hints参数,用于启用提示位(hint-bit)变更的 WAL 日志
服务器 / 服务器设置
新增wal_log_hints参数,用于启用提示位(hint-bit)变更的 WAL 日志(Sawada Masahiko)
提示位变更通常不记录日志,启用了校验和时除外。这对 pg_rewind 等外部工具很有用。
新功能将work_mem和maintenance_work_mem的默认设置提高到原来的四倍
服务器 / 服务器设置
将work_mem和maintenance_work_mem的默认设置提高到原来的四倍(Bruce Momjian)
新的默认值分别为 4MB 和 64MB。
新功能将effective_cache_size的默认设置提高到 4GB
服务器 / 服务器设置
将effective_cache_size的默认设置提高到 4GB(Bruce Momjian、Tom Lane)
新功能允许在log_line_prefix中指定 printf 风格的空格填充
服务器 / 服务器设置
允许在log_line_prefix中指定 printf 风格的空格填充(David Rowley)
新功能允许在指定配置变量值时使用太字节单位(TB)
服务器 / 服务器设置
允许在指定配置变量值时使用太字节单位(TB)(Simon Riggs)
新功能在log_lock_waits日志消息中显示锁持有者和等待者的 PID,并改进关系相关信息
服务器 / 服务器设置
在log_lock_waits日志消息中显示锁持有者和等待者的 PID,并改进关系相关信息(Christian Kruse)
新功能降低加载共享库时的服务器日志级别
服务器 / 服务器设置
降低加载共享库时的服务器日志级别(Peter Geoghegan)
以前的级别是 LOG,对于按会话加载的库来说过于冗长。
新功能在 Windows 上,使 SQL_ASCII 编码的数据库和服务器进程(例如postmaster)以服务器 Windows 用户区域设置的字符编码发出消息
服务器 / 服务器设置
在 Windows 上,使 SQL_ASCII 编码的数据库和服务器进程(例如postmaster)以服务器 Windows 用户区域设置的字符编码发出消息(Alexander Law、Noah Misch)
此前这些消息以 Windows ANSI 代码页输出。
新功能新增复制槽,以协调流复制备库与其流来源节点的活动
复制与恢复
新增复制槽,以协调流复制备库与其流来源节点的活动(Andres Freund、Robert Haas)
复制槽允许在主库上保留 WAL 文件等资源,直到备库服务器不再需要它们。
新功能新增恢复参数recovery_min_apply_delay以延迟复制
复制与恢复
新增恢复参数recovery_min_apply_delay以延迟复制(Robert Haas, Fabrízio de Royes Mello、Simon Riggs)
延迟备库服务器上的重放对于从用户错误中恢复可能很有用。
新功能新增recovery_target选项 immediate,在达到一致状态后立即停止 WAL 恢复
复制与恢复
新增recovery_target选项 immediate,在达到一致状态后立即停止 WAL 恢复(MauMau、Heikki Linnakangas)
新功能改进恢复目标的处理
复制与恢复
改进恢复目标的处理(Heikki Linnakangas)
pg_last_xact_replay_timestamp() 报告的时间戳现在反映已提交的记录,而不是将要提交的事务。恢复到还原点现在会重放到还原点本身,而不是在还原点之前停止。
新功能pg_switch_xlog() 现在会清除旧 WAL 文件中所有未使用的尾部空间
复制与恢复
pg_switch_xlog() 现在会清除旧 WAL 文件中所有未使用的尾部空间(Heikki Linnakangas)
这提高了 WAL 文件的压缩率。
新功能报告外部恢复命令的失败返回码
复制与恢复
报告外部恢复命令的失败返回码(Peter Eisentraut)
新功能减少 WAL 重放期间的自旋锁争用
复制与恢复
减少 WAL 重放期间的自旋锁争用(Heikki Linnakangas)
新功能更频繁地写入运行中事务的 WAL 记录
复制与恢复
更频繁地写入运行中事务的 WAL 记录(Andres Freund)
这使备库服务器能够更快启动并更积极地清理资源。
新功能新增对 WAL 数据逻辑解码的支持,允许以可自定义的格式流出数据库变更
复制与恢复 / 逻辑解码
新增对 WAL 数据逻辑解码的支持,允许以可自定义的格式流出数据库变更(Andres Freund)
新功能新增wal_level设置 logical,用于在 WAL 中启用逻辑变更集编码
复制与恢复 / 逻辑解码
新增wal_level设置 logical,用于在 WAL 中启用逻辑变更集编码(Andres Freund)
新功能新增表级参数REPLICA IDENTITY,用于控制逻辑复制
复制与恢复 / 逻辑解码
新增表级参数REPLICA IDENTITY,用于控制逻辑复制(Andres Freund)
新功能新增关系选项user_catalog_table,用于标识参与逻辑变更集编码的用户创建表
复制与恢复 / 逻辑解码
新增关系选项user_catalog_table,用于标识参与逻辑变更集编码的用户创建表(Andres Freund)
新功能新增pg_recvlogical应用程序,用于接收逻辑解码数据
复制与恢复 / 逻辑解码
新增pg_recvlogical应用程序,用于接收逻辑解码数据(Andres Freund)
新功能新增test_decoding模块,用于在 SQL 层面演示逻辑解码
复制与恢复 / 逻辑解码
新增test_decoding模块,用于在 SQL 层面演示逻辑解码(Andres Freund)
新功能新增 WITH ORDINALITY 语法,为 FROM 子句中集合返回函数返回的行编号
查询
新增 WITH ORDINALITY 语法,为 FROM 子句中集合返回函数返回的行编号(Andrew Gierth、David Fetter)
这对 unnest() 之类的函数特别有用。
新功能新增 ROWS FROM() 语法,允许在 FROM 子句中对集合返回函数进行水平串联
查询
新增 ROWS FROM() 语法,允许在 FROM 子句中对集合返回函数进行水平串联(Andrew Gierth)
新功能允许SELECT拥有空目标列表
查询
允许SELECT拥有空目标列表(Tom Lane)
增加此功能是为了使从零列表中选择的视图能够被正确转储和还原。
新功能确保 SELECT ... FOR UPDATE NOWAIT 在涉及已被并发更新元组的极端情况下不会等待
查询
确保 SELECT ... FOR UPDATE NOWAIT 在涉及已被并发更新元组的极端情况下不会等待(Craig Ringer and Thomas Munro)
新功能新增 DISCARD SEQUENCES 命令,用于丢弃缓存的序列相关状态
工具命令
新增 DISCARD SEQUENCES 命令,用于丢弃缓存的序列相关状态(Fabrízio de Royes Mello、Robert Haas)
DISCARD ALL 现在也会丢弃此类信息。
新功能为 COPY FROM 新增 FORCE NULL 选项,在 CSV 模式下使与指定空串匹配的带引号字符串转换为 NULL
工具命令
为 COPY FROM 新增 FORCE NULL 选项,在 CSV 模式下使与指定空串匹配的带引号字符串转换为 NULL(Ian Barwick、Michael Paquier)
若不使用此选项,则只有不带引号的匹配字符串才会被导入为空值。
新功能对在事务块之外使用且不可能生效的命令发出警告
工具命令
对在事务块之外使用且不可能生效的命令发出警告(Bruce Momjian)
当 SET LOCAL、SET CONSTRAINTS、SET TRANSACTION 和 ABORT 在事务块之外使用时会发出新的警告。
新功能使 EXPLAIN ANALYZE 显示规划时间
工具命令 / EXPLAIN
使 EXPLAIN ANALYZE 显示规划时间(Andreas Karlsson)
新功能使 EXPLAIN 显示 Agg 和 Group 节点中的分组列
工具命令 / EXPLAIN
使 EXPLAIN 显示 Agg 和 Group 节点中的分组列(Tom Lane)
新功能使 EXPLAIN ANALYZE 显示位图堆扫描中的精确和有损块计数
工具命令 / EXPLAIN
使 EXPLAIN ANALYZE 显示位图堆扫描中的精确和有损块计数(Etsuro Fujita)
新功能允许刷新物化视图而不阻塞其他会话在此期间读取该视图
工具命令 / 视图
允许刷新物化视图而不阻塞其他会话在此期间读取该视图(Kevin Grittner)
新功能允许视图被自动更新,即使它们包含一些不可更新的列
工具命令 / 视图
允许视图被自动更新,即使它们包含一些不可更新的列(Dean Rasheed)
此前,存在表达式、字面量和函数调用等不可更新输出列会阻止自动更新。现在支持 INSERT、UPDATE 和 DELETE,只要它们不试图为任何不可更新列赋新值。
新功能允许控制 INSERT 和 UPDATE 能否向自动可更新视图中添加不会出现在该视图中的行
工具命令 / 视图
允许控制 INSERT 和 UPDATE 能否向自动可更新视图中添加不会出现在该视图中的行(Dean Rasheed)
这通过新的CREATE VIEW子句 WITH CHECK OPTION 控制。
新功能允许安全屏障视图被自动更新
工具命令 / 视图
允许安全屏障视图被自动更新(Dean Rasheed)
新功能支持在外部表上使用触发器
对象操作
支持在外部表上使用触发器(Ronan Dunklau)
新功能允许使用ALTER TABLE、ALTER INDEX或ALTER MATERIALIZED VIEW的 ALL IN TABLESPACE ... SET TABLESPACE 形式把成组对象从一个表空间移动到另一个表空间
对象操作
允许使用ALTER TABLE、ALTER INDEX或ALTER MATERIALIZED VIEW的 ALL IN TABLESPACE ... SET TABLESPACE 形式把成组对象从一个表空间移动到另一个表空间(Stephen Frost)
新功能允许通过ALTER TABLE ... ALTER CONSTRAINT 更改外键约束的可延迟性
对象操作
允许通过ALTER TABLE ... ALTER CONSTRAINT 更改外键约束的可延迟性(Simon Riggs)
新功能降低某些ALTER TABLE命令的锁强度
对象操作
降低某些ALTER TABLE命令的锁强度(Simon Riggs、Noah Misch、Robert Haas)
具体而言,VALIDATE CONSTRAINT、CLUSTER ON、SET WITHOUT CLUSTER、ALTER COLUMN SET STATISTICS、ALTER COLUMN SET (attribute_option)、ALTER COLUMN RESET (attribute_option) 不再需要 ACCESS EXCLUSIVE 锁。
新功能允许在CREATE TABLESPACE中设置表空间选项
对象操作
允许在CREATE TABLESPACE中设置表空间选项(Vik Fearing)
以前这些选项只能通过ALTER TABLESPACE设置。
新功能允许CREATE AGGREGATE定义聚集转换状态数据的估计大小
对象操作
允许CREATE AGGREGATE定义聚集转换状态数据的估计大小(Hadi Moshayedi)
恰当使用此功能可使规划器更好地估计聚集将使用多少内存。
问题修复修复 DROP IF EXISTS,使其在更多情况下避免对不存在对象报错
对象操作
修复 DROP IF EXISTS,使其在更多情况下避免对不存在对象报错(Pavel Stehule、Dean Rasheed)
新功能改进系统关系的标识方式
对象操作
改进系统关系的标识方式(Andres Freund、Robert Haas)
此前,一旦关系被移入 pg_catalog 模式,就不能再修改或删除。
新功能完整实现 line 数据类型
新功能新增 pg_lsn 数据类型,用于表示 WAL 日志序列号(LSN)
数据类型
新增 pg_lsn 数据类型,用于表示 WAL 日志序列号(LSN)(Robert Haas、Michael Paquier)
新功能支持随时间改变 UTC 偏移的时区缩写
数据类型
支持随时间改变 UTC 偏移的时区缩写(Tom Lane)
此前,PostgreSQL 假定时区缩写(如 EST)关联的 UTC 偏移在任何特定区域设置的用法中永不改变。然而这一假设在现实世界中并不成立,因此引入了让区域缩写表示有时会变化的 UTC 偏移的能力。更新了时区缩写定义文件,在自 1970 年以来缩写的 UTC 偏移发生过变化的时区区域设置中使用此功能(依据 IANA 时区数据库)。在此类时区中,PostgreSQL 现在会根据给定日期为缩写关联正确的 UTC 偏移。
新功能在适当情况下,允许非 ISO 的 timestamp 和 date 字符串使用五位及以上年份
数据类型
在适当情况下,允许非 ISO 的 timestamp 和 date 字符串使用五位及以上年份(Bruce Momjian)
新功能新增对 interval 值上溢/下溢的检查
数据类型
新增对 interval 值上溢/下溢的检查(Bruce Momjian)
新功能新增 jsonb,一种存储 JSON 数据的功能更强、效率更高的数据类型
数据类型 / JSON
新增 jsonb,一种存储 JSON 数据的功能更强、效率更高的数据类型(Oleg Bartunov、Teodor Sigaev、Alexander Korotkov、Peter Geoghegan、Andrew Dunstan)
这种新类型允许更快地访问 JSON 文档中的值,以及对 JSON 列更快、更有用的索引。jsonb 文档中的标量值以适当的标量 SQL 类型存储,JSON 文档结构经过预解析,而不是像原来的 json 数据类型那样以文本形式存储。
新功能新增 JSON 函数以允许构造任意复杂的 JSON 树
数据类型 / JSON
新增 JSON 函数以允许构造任意复杂的 JSON 树(Andrew Dunstan、Laurence Rowe)
新函数包括 json_array_elements_text()、json_build_array()、json_object()、json_object_agg()、json_to_record() 和 json_to_recordset()。
新功能新增 json_typeof(),返回 json 值的数据类型
数据类型 / JSON
新增 json_typeof(),返回 json 值的数据类型(Andrew Tipton)
新功能新增 pg_sleep_for(interval) 和 pg_sleep_until(timestamp),以更灵活地指定延迟
函数
新增 pg_sleep_for(interval) 和 pg_sleep_until(timestamp),以更灵活地指定延迟(Vik Fearing、Julien Rouhaud)
现有的 pg_sleep() 函数只支持以秒为单位指定延迟。
新功能新增面向数组的 cardinality() 函数
函数
新增面向数组的 cardinality() 函数(Marko Tiikkaja)
它返回数组中元素的总数,对于没有元素的数组则返回零。
新功能新增 SQL 函数,允许在任意偏移处进行大对象读写
函数
新增 SQL 函数,允许在任意偏移处进行大对象读写(Pavel Stehule)
新功能允许 unnest() 接受多个参数,各参数分别展开后再水平串联
函数
允许 unnest() 接受多个参数,各参数分别展开后再水平串联(Andrew Gierth)
新功能新增从各个单独的值(而非字符串)构造 time、date、timestamp、timestamptz 和 interval 的函数
函数
新增从各个单独的值(而非字符串)构造 time、date、timestamp、timestamptz 和 interval 的函数(Pavel Stehule)
这些函数的名称以 make_ 为前缀,例如 make_date()。
新功能使 to_char() 的 TZ 格式说明符对简单的数字时区偏移返回有用的值
函数
使 to_char() 的 TZ 格式说明符对简单的数字时区偏移返回有用的值(Tom Lane)
此前,如果 timezone 被设置为类似 -4 的常量,to_char(CURRENT_TIMESTAMP, 'TZ') 会返回空字符串。
新功能为 to_char() 新增时区偏移格式说明符 OF
函数
为 to_char() 新增时区偏移格式说明符 OF(Bruce Momjian)
新功能改进 random() 所用的随机种子
函数
改进 random() 所用的随机种子(Honza Horak)
新功能收紧 chr(int) 中对 Unicode 码点的有效性检查
函数
收紧 chr(int) 中对 Unicode 码点的有效性检查(Tom Lane)
此函数现在只接受按照 RFC 3629 是有效 UTF8 字符的值。
新功能新增在 pg_class、pg_proc、pg_type 和 pg_operator 中查找对象的函数,它们不会对不存在的对象产生错误
函数 / 系统信息函数
新增在 pg_class、pg_proc、pg_type 和 pg_operator 中查找对象的函数,它们不会对不存在的对象产生错误(Yugo Nagata、Nozomi Anzai、Robert Haas)
例如,to_regclass() 类似于 regclass 输入函数在 pg_class 中进行查找,但对不存在的对象返回 NULL 而不是失败。
新功能新增函数 pg_filenode_relation(),允许更高效地从文件节点查找关系名
函数 / 系统信息函数
新增函数 pg_filenode_relation(),允许更高效地从文件节点查找关系名(Andres Freund)
新功能为 information_schema.parameters 视图新增 parameter_default 列
函数 / 系统信息函数
为 information_schema.parameters 视图新增 parameter_default 列(Peter Eisentraut)
新功能使 information_schema.schemata 显示所有可访问的模式
函数 / 系统信息函数
使 information_schema.schemata 显示所有可访问的模式(Peter Eisentraut)
此前它只显示当前用户拥有的模式。
新功能通过 FILTER 子句控制哪些行被传递给聚集函数
函数 / 聚合
通过 FILTER 子句控制哪些行被传递给聚集函数(David Fetter)
新功能支持有序集(WITHIN GROUP)聚集
函数 / 聚合
支持有序集(WITHIN GROUP)聚集(Atri Sharma、Andrew Gierth、Tom Lane)
新功能新增标准有序集聚集 percentile_cont()、percentile_disc()、mode()、rank()、dense_rank()、percent_rank() 和 cume_dist()
函数 / 聚合
新增标准有序集聚集 percentile_cont()、percentile_disc()、mode()、rank()、dense_rank()、percent_rank() 和 cume_dist()(Atri Sharma、Andrew Gierth)
新功能支持 VARIADIC 聚集函数
函数 / 聚合
支持 VARIADIC 聚集函数(Tom Lane)
新功能允许多态聚集具有非多态的状态数据类型
函数 / 聚合
允许多态聚集具有非多态的状态数据类型(Tom Lane)
这使得可以在 SQL 中正确声明诸如内置聚集 array_agg() 之类的聚集。
新功能在 PL/Python 中把 numeric 值转换为 decimal
新功能新增使用 GET DIAGNOSTICS 获取当前 PL/pgSQL 调用栈的能力
服务器端语言 / PL/pgSQL Server-Side Language
新增使用 GET DIAGNOSTICS 获取当前 PL/pgSQL 调用栈的能力(Pavel Stehule、Stephen Frost)
新功能新增选项 print_strict_params,用于显示传递给违反 STRICT 约束的查询的参数
服务器端语言 / PL/pgSQL Server-Side Language
新增选项 print_strict_params,用于显示传递给违反 STRICT 约束的查询的参数(Marko Tiikkaja)
新功能新增变量 plpgsql.extra_warnings 和 plpgsql.extra_errors,用于启用额外的 PL/pgSQL 警告和错误
服务器端语言 / PL/pgSQL Server-Side Language
新增变量 plpgsql.extra_warnings 和 plpgsql.extra_errors,用于启用额外的 PL/pgSQL 警告和错误(Marko Tiikkaja、Petr Jelinek)
目前只有关于被遮蔽变量的警告/错误可用。
新功能使 libpq 的 PQconndefaults() 函数忽略无效的服务文件
libpq
使 libpq 的 PQconndefaults() 函数忽略无效的服务文件(Steve Singer、Bruce Momjian)
此前它遇到不正确的服务文件时会返回 NULL。
新功能libpq 接受 TLSv1 之外的 TLS 协议版本
libpq
libpq 接受 TLSv1 之外的 TLS 协议版本(Marko Kreen)
新功能为createuser新增选项 -g,用于指定角色成员关系
客户端应用程序
为createuser新增选项 -g,用于指定角色成员关系(Christopher Browne)
新功能为vacuumdb新增选项 --analyze-in-stages,按粒度递增的分阶段方式进行分析
客户端应用程序
为vacuumdb新增选项 --analyze-in-stages,按粒度递增的分阶段方式进行分析(Peter Eisentraut)
这允许快速创建最基本的统计信息。
新功能使带选项 -n 的pg_resetxlog输出当前值和可能被更改的值
客户端应用程序
使带选项 -n 的pg_resetxlog输出当前值和可能被更改的值(Rajeev Rastogi)
新功能使initdb对不正确的区域设置抛出错误,而不是静默回退到默认选择
客户端应用程序
使initdb对不正确的区域设置抛出错误,而不是静默回退到默认选择(Tom Lane)
新功能使pg_ctl在数据目录不可访问时返回退出码 4
客户端应用程序
使pg_ctl在数据目录不可访问时返回退出码 4(Amit Kapila、Bruce Momjian)
这一行为更符合 Linux 标准库(LSB)核心规范。
新功能在 Windows 上,确保非绝对路径的 -D 规范相对于pg_ctl的当前目录解释
客户端应用程序
在 Windows 上,确保非绝对路径的 -D 规范相对于pg_ctl的当前目录解释(Kumar Rajeev Rastogi)
此前它会相对于底层 Windows 服务启动时所在的目录解释。
新功能允许在 ECPG 的 C 数组定义中使用 sizeof()
客户端应用程序
允许在 ECPG 的 C 数组定义中使用 sizeof()(Michael Meskes)
新功能使 ECPG 正确处理 C 文本和 SQL 文本中 C 风格注释的嵌套
客户端应用程序
使 ECPG 正确处理 C 文本和 SQL 文本中 C 风格注释的嵌套(Michael Meskes)
新功能在禁用页脚时,抑制 psql expanded 模式下的 “No rows” 输出
客户端应用程序 / psql
在禁用页脚时,抑制 psql expanded 模式下的 “No rows” 输出(Bruce Momjian)
新功能允许用 Control-C 中止在连接启动时挂起的 psql
客户端应用程序 / psql
允许用 Control-C 中止在连接启动时挂起的 psql(Peter Eisentraut)
新功能使 psql 的 \db+ 显示表空间选项
客户端应用程序 / psql / 反斜线命令
使 psql 的 \db+ 显示表空间选项(Magnus Hagander)
新功能使 \do+ 显示实现操作符的函数
客户端应用程序 / psql / 反斜线命令
使 \do+ 显示实现操作符的函数(Marko Tiikkaja)
新功能使 \d+ 只在表中存在 oid 列时才输出 OID 行
客户端应用程序 / psql / 反斜线命令
使 \d+ 只在表中存在 oid 列时才输出 OID 行(Bruce Momjian)
此前,oid 列的存在与否总是会被报告。
新功能使 \d 显示被禁用的系统触发器
客户端应用程序 / psql / 反斜线命令
使 \d 显示被禁用的系统触发器(Bruce Momjian)
此前,如果禁用所有触发器,只有用户触发器会显示为已禁用。
问题修复修复 \copy,不再要求 stdin 与分号之间有空格
客户端应用程序 / psql / 反斜线命令
修复 \copy,不再要求 stdin 与分号之间有空格(Etsuro Fujita)
新功能在 \copy 结束时输出行数,就像 COPY 已经做的那样
客户端应用程序 / psql / 反斜线命令
在 \copy 结束时输出行数,就像 COPY 已经做的那样(Kumar Rajeev Rastogi)
问题修复修复 \conninfo,使其对使用 hostaddr 的连接显示服务器的 IP 地址
客户端应用程序 / psql / 反斜线命令
修复 \conninfo,使其对使用 hostaddr 的连接显示服务器的 IP 地址(Fujii Masao)
此前在这些情况下 \conninfo 无法显示服务器的 IP 地址。
新功能在 \conninfo 中显示 SSL 协议版本
客户端应用程序 / psql / 反斜线命令
在 \conninfo 中显示 SSL 协议版本(Marko Kreen)
新功能为 \pset 新增 Tab 补全
客户端应用程序 / psql / 反斜线命令
为 \pset 新增 Tab 补全(Pavel Stehule)
新功能允许不带参数的 \pset 显示所有设置
客户端应用程序 / psql / 反斜线命令
允许不带参数的 \pset 显示所有设置(Gilles Darold)
新功能使 \s 显示其写入的历史文件名时不转换为绝对路径
客户端应用程序 / psql / 反斜线命令
使 \s 显示其写入的历史文件名时不转换为绝对路径(Tom Lane)
以前的代码试图把相对文件名转换为绝对路径用于显示,但经常出错。
新功能允许pg_restore的选项 -I、-P、-T 和 -n 被多次指定
客户端应用程序 / pg_dump
允许pg_restore的选项 -I、-P、-T 和 -n 被多次指定(Heikki Linnakangas)
这允许在一次操作中还原多个对象。
新功能可选地为还原期间删除旧对象时发出的 DROP 命令添加 IF EXISTS 子句
客户端应用程序 / pg_dump
可选地为还原期间删除旧对象时发出的 DROP 命令添加 IF EXISTS 子句(Pavel Stehule)
此变更避免在删除旧对象时出现不必要的错误。pg_dump、pg_dumpall和pg_restore的新选项 --if-exists 只有在同时指定了 --clean 时才可用。
新功能新增 pg_basebackup 选项 --xlogdir,用于指定 pg_xlog 目录的位置
客户端应用程序 / pg_basebackup
新增 pg_basebackup 选项 --xlogdir,用于指定 pg_xlog 目录的位置(Haribabu Kommi)
新功能允许 pg_basebackup 在备份副本中重定位表空间
客户端应用程序 / pg_basebackup
允许 pg_basebackup 在备份副本中重定位表空间(Steeve Lennmark)
这对于在与主库相同的机器上使用 pg_basebackup 特别有用。
新功能允许对网络流基础备份进行限速
客户端应用程序 / pg_basebackup
允许对网络流基础备份进行限速(Antonin Houska)
这可以通过 pg_basebackup 的 --max-rate 参数控制。
新功能改进元组冻结方式以保留取证信息
源代码
改进元组冻结方式以保留取证信息(Robert Haas、Andres Freund)
此变更消除了尽快冻结元组的主要障碍。检查元组标志位的代码将需要修改。
新功能不再要求为标记有 PG_FUNCTION_INFO_V1 宏的函数编写函数原型
源代码
不再要求为标记有 PG_FUNCTION_INFO_V1 宏的函数编写函数原型(Peter Eisentraut)
此变更消除了编写样板原型的需要。注意,PG_FUNCTION_INFO_V1 宏必须出现在相应函数定义之前,以避免编译器警告。
新功能移除 SnapshotNow 和 HeapTupleSatisfiesNow()
源代码
移除 SnapshotNow 和 HeapTupleSatisfiesNow()(Robert Haas)
所有现有用法都已切换到更合适的快照类型。目录扫描现在使用 MVCC 快照。
新功能新增允许超过 1GB 内存分配的 API
源代码
新增允许超过 1GB 内存分配的 API(Noah Misch)
新功能新增 psprintf() 以简化字符串组合期间的内存分配
源代码
新增 psprintf() 以简化字符串组合期间的内存分配(Peter Eisentraut、Tom Lane)
新功能支持 printf() 尺寸修饰符 z 以打印 size_t 值
源代码
支持 printf() 尺寸修饰符 z 以打印 size_t 值(Andres Freund)
新功能更改 appendStringInfoVA() 的 API 以更好地使用 vsnprintf()
源代码
更改 appendStringInfoVA() 的 API 以更好地使用 vsnprintf()(David Rowley、Tom Lane)
新功能允许创建新类型的外部 TOAST 数据
源代码
允许创建新类型的外部 TOAST 数据(Andres Freund)
新功能新增单读者、单写者的轻量级共享消息队列
源代码
新增单读者、单写者的轻量级共享消息队列(Robert Haas)
新功能提高 x86_64 CPU 上的自旋锁速度
源代码
提高 x86_64 CPU 上的自旋锁速度(Heikki Linnakangas)
新功能移除对不再支持的平台 SINIX、Sun3 和 NS32K 的自旋锁支持
源代码
移除对不再支持的平台 SINIX、Sun3 和 NS32K 的自旋锁支持(Robert Haas)
新功能移除 IRIX 移植
源代码
移除 IRIX 移植(Robert Haas)
新功能减少 --disable-spinlocks 构建所需的信号量数量
源代码
减少 --disable-spinlocks 构建所需的信号量数量(Robert Haas)
新功能用 Perl 重写 duplicate_oids Unix shell 脚本
源代码
用 Perl 重写 duplicate_oids Unix shell 脚本(Andrew Dunstan)
新功能为客户端程序新增测试任何协议(TAP)测试
源代码
为客户端程序新增测试任何协议(TAP)测试(Peter Eisentraut)
目前,只有当向 configure 给定了 --enable-tap-tests 选项时,make check-world 才会运行这些测试。在未来的某个发行版中,这可能会成为默认行为。
新功能新增 make 目标 check-tests 和 installcheck-tests,允许选择要运行的个别测试
源代码
新增 make 目标 check-tests 和 installcheck-tests,允许选择要运行的个别测试(Andrew Dunstan)
新功能移除 maintainer-check makefile 规则
源代码
移除 maintainer-check makefile 规则(Peter Eisentraut)
默认构建规则现在包含所有以前可选的测试。
新功能改进 PGXS 模块的 VPATH 构建支持
源代码
改进 PGXS 模块的 VPATH 构建支持(Cédric Villemain、Andrew Dunstan、Peter Eisentraut)
新功能升级到 Autoconf 2.69
源代码
升级到 Autoconf 2.69(Peter Eisentraut)
新功能新增一个 configure 标志,用于向 PG_VERSION 字符串追加自定义文本
源代码
新增一个 configure 标志,用于向 PG_VERSION 字符串追加自定义文本(Oskari Saarenmaa)
这对于构建自定义二进制文件的打包者很有用。
新功能改进 DocBook XML 有效性
源代码
改进 DocBook XML 有效性(Peter Eisentraut)
问题修复修复 Coverity 扫描器报告的各种轻微安全和健全性问题
源代码
修复 Coverity 扫描器报告的各种轻微安全和健全性问题(Stephen Frost)
新功能改进用 Valgrind 测试 PostgreSQL 时对无效内存使用的检测
源代码
改进用 Valgrind 测试 PostgreSQL 时对无效内存使用的检测(Noah Misch)
新功能改进 Emacs 示例配置文件 emacs.samples
源代码
改进 Emacs 示例配置文件 emacs.samples(Peter Eisentraut)
还向源代码树顶层添加了 .dir-locals.el。
新功能允许 pgindent 接受命令行形式的 typedef 列表
源代码
允许 pgindent 接受命令行形式的 typedef 列表(Bruce Momjian)
新功能使 pgindent 更智能地处理预处理器条件语句周围的空行
源代码
使 pgindent 更智能地处理预处理器条件语句周围的空行(Bruce Momjian)
新功能避免在 Cygwin 和 Mingw 构建中大多数对 dlltool 的使用
源代码
避免在 Cygwin 和 Mingw 构建中大多数对 dlltool 的使用(Marco Atzeri、Hiroshi Inoue)
新功能支持在 MSVC(Windows)构建中进行仅客户端安装
源代码
支持在 MSVC(Windows)构建中进行仅客户端安装(MauMau)
新功能新增pg_prewarm扩展,用于在服务器启动时把关系数据预加载到共享缓冲区缓存中
附加模块
新增pg_prewarm扩展,用于在服务器启动时把关系数据预加载到共享缓冲区缓存中(Robert Haas)
这使系统能更快达到完全运行性能。
新功能为pgcrypto新增 UUID 随机数生成器 gen_random_uuid()
新功能允许uuid-ossp使用 BSD 或 e2fsprogs UUID 库工作,而不仅仅是 OSSP UUID 库
附加模块
允许uuid-ossp使用 BSD 或 e2fsprogs UUID 库工作,而不仅仅是 OSSP UUID 库(Matteo Beccati)
这改进了 uuid-ossp 模块的可移植性,因为它不再必须依赖日益过时的 OSSP 库。该模块的名称现在已名不副实,但我们不会更改它。
新功能为auto_explain新增包含触发器执行时间的选项
附加模块
为auto_explain新增包含触发器执行时间的选项(Horiguchi Kyotaro)
问题修复修复pgstattuple,使其不把来自未提交事务的行报告为死行
附加模块
修复pgstattuple,使其不把来自未提交事务的行报告为死行(Robert Haas)
新功能使pgstattuple函数使用 regclass 类型的参数
附加模块
使pgstattuple函数使用 regclass 类型的参数(Satoshi Nagayasu)
虽然 text 类型的参数仍受支持,但它们可能在未来某个主版本中被移除。
新功能改进pgrowlocks输出的一致性,使其更一致地遵循快照规则
附加模块
改进pgrowlocks输出的一致性,使其更一致地遵循快照规则(Robert Haas)
新功能改进pg_trgm在索引正则表达式搜索中对三元组的选取
附加模块
改进pg_trgm在索引正则表达式搜索中对三元组的选取(Alexander Korotkov)
此变更不鼓励使用包含空白的三元组,它们通常选择性较低。
新功能允许pg_xlogdump使用 --follow 报告实时日志流
附加模块
允许pg_xlogdump使用 --follow 报告实时日志流(Heikki Linnakangas)
新功能更紧凑地存储cube数据
附加模块
更紧凑地存储cube数据(Stas Kelvich)
现有数据必须经过转储/还原才能使用新格式。旧格式仍可读取。
新功能通过使用游标减少vacuumlo的客户端内存用量
附加模块
通过使用游标减少vacuumlo的客户端内存用量(Andrew Dunstan)
新功能大幅减少pg_upgrade的内存消耗
附加模块
大幅减少pg_upgrade的内存消耗(Bruce Momjian)
新功能把pg_upgrade的用户名(-U)选项传递给生成的分析脚本
附加模块
把pg_upgrade的用户名(-U)选项传递给生成的分析脚本(Bruce Momjian)
新功能移除 pgbench 脚本的行长限制
附加模块 / pgbench
移除 pgbench 脚本的行长限制(Sawada Masahiko)
以前的行限制为 BUFSIZ。
新功能为 pgbench 新增长选项名
附加模块 / pgbench
为 pgbench 新增长选项名(Fabien Coelho)
新功能新增 pgbench 选项 --rate,用于控制事务速率
附加模块 / pgbench
新增 pgbench 选项 --rate,用于控制事务速率(Fabien Coelho)
新功能新增 pgbench 选项 --progress,用于打印周期性进度报告
附加模块 / pgbench
新增 pgbench 选项 --progress,用于打印周期性进度报告(Fabien Coelho)
新功能使 pg_stat_statements 使用文件而非共享内存来存储查询文本
附加模块 / pg_stat_statements
使 pg_stat_statements 使用文件而非共享内存来存储查询文本(Peter Geoghegan)
这消除了以前对查询文本长度的限制,并允许默认跟踪更多数量的唯一语句。
新功能允许报告 pg_stat_statements 的内部查询哈希标识符
附加模块 / pg_stat_statements
允许报告 pg_stat_statements 的内部查询哈希标识符(Daniel Farina、Sameer Thakur、Peter Geoghegan)
新功能新增获取除查询文本之外的所有 pg_stat_statements 信息的能力
附加模块 / pg_stat_statements
新增获取除查询文本之外的所有 pg_stat_statements 信息的能力(Peter Geoghegan)
这使监控工具可以只为刚创建的条目获取查询文本,从而改进重复查询统计信息时的性能。
新功能使 pg_stat_statements 忽略 DEALLOCATE 命令
附加模块 / pg_stat_statements
使 pg_stat_statements 忽略 DEALLOCATE 命令(Fabien Coelho)
它已经忽略 PREPARE 以及一般的规划时间,因此这样更一致。
新功能服务器关闭时把统计信息文件保存到 $PGDATA/pg_stat 而不是 $PGDATA/global
附加模块 / pg_stat_statements
服务器关闭时把统计信息文件保存到 $PGDATA/pg_stat 而不是 $PGDATA/global(Fujii Masao)
没有匹配的变化
尝试其他关键词,或 .
如何生成比较结果?
比较依据起始版本之后至目标版本的 PostgreSQL 发布说明。经核实的回补重复项会谨慎合并,保留每条原始说明;相关提交可能涉及独立变化,仍作为不同记录保留。
发布快照: 2026-09-26 · 安全快照: 2026-09-26
内容来自 PostgreSQL 发布说明。交互方式参考 pgversions.com 与 pgversionreport.