PostgreSQL 14

次要版本发布

后端更改

SPI 更改

  • 添加了以下函数 (提交 ee895a65d5a83d79)
    • SPI_execute_extended()
    • SPI_cursor_parse_open()

存储参数更改

  • 添加了parallel_insert_enabled (提交 c8f78b61)

Vacuum 更改

  • 在执行COPY FREEZE后,Vacuum 不再需要重写整个表 (提交 7db0cd21)
  • 在 autovacuum 详细日志中显示每个索引的统计信息 (提交 5aed6a1f)
  • 元组压缩改进 (提交 19c60ad6)
  • 跳过不必要的索引真空操作 (提交 5100010e)
  • 使用CONCURRENTLY选项执行的索引操作将被忽略 (提交 d9d07622) 此更改被发现不安全,并通过提交 042b584c (PostgreSQL 14.4) 回滚
  • 添加了环绕失效保护功能 (提交 1e55e7d1)

源代码配置

  • 添加了选项 --with-ssl (提交 fe61df7f)

数据类型更改

常规

jsonb

  • 添加了下标支持 (提交 676887a3)

pg_lsn

  • 添加了+(pg_lsn,numeric)-(pg_lsn,numeric)运算符 (提交 9bae7e4c)

运算符更改

已移除

  • 阶乘运算符!!! (提交 76f412ab)
  • 弃用内置几何数据类型的包含运算符@~ (提交 2f70fdb0)
  • 移除后缀(右一元)运算符的支持 (提交 1ed6b895)

索引更改

常规

  • 添加了对排序规则版本控制的支持 (初始提交 257836a7)
  • 并发索引创建可以跳过对其他并发(重新)索引进程的等待 (提交 c98763bf)
  • 并发重新索引可以跳过对其他并发(重新)索引进程的等待 (提交 f9900df5)

btree 索引

  • B树索引的“自下而上删除” (提交 d168b666)

BRIN 索引

  • 添加了对BRIN布隆索引的支持 (提交 77b88cd1)
  • 添加了对BRIN最小-最大多索引的支持 (提交 ab596105)

GiST 索引

  • 支持通过预排序数据来构建GiST索引 (提交 16fa9b2b)

SP-GiST 索引

  • 添加了对INCLUDE列的支持 (提交 09c1c6ab)

分区更改

  • 可以并发地分离分区 (提交 71f4c8c6)

SQL 更改

已修改

系统目录更改

常规

  • 向系统目录表添加主键和唯一约束 (提交 dfb75e47)

已修改

视图

添加

已修改

系统函数更改

添加

已修改

已移除

配置更改

常规

  • 自定义 配置参数 名称只能使用对未加引号的 SQL 标识符有效的名称 (提交 3db826bd)

添加

已修改

已移除

已撤回

 

用户/角色

身份验证更改

pg_hba.conf

  • 身份验证选项 clientcert 不再支持选项 01no-verify (提交 8f8154a5

pg_ident.conf

  • 记录可以跨多行(提交 8f8154a5

正则表达式更改

  • \w 现在映射到 [​[:word:]​​](之前:[​[:alnum:]_])并且在字符类中不允许作为范围的起始/结束(提交 2a0af7fe
  • \D\S\W 现在允许在方括号表达式中使用(提交 2a0af7fe
  • 改进了正则表达式反向引用的处理(提交 4aea704a

过程语言更改

PL/pgSQL

  • 改进了重复CALL调用的性能(提交 ee895a65
  • 删除了未公开的IS [NOT] OF语法(提交 926fa801

复制更改

流复制

逻辑复制

  • 数据可以以二进制格式传输(提交 9de77b54
  • 增加了对正在进行的事务流的支持(提交 46482432
  • 输出插件API现在能够解码已准备好的事务(提交 0aa8a01d
  • 表同步期间允许多个事务(提交 ce0fdbfe

外部数据包装器更改

  • 添加了批量插入API(提交 b663a413
  • 添加了表截断API(提交 8ff1c946
  • 添加了异步执行支持(提交 27e1f145

信息模式更改

  • 添加了例程使用表作为占位符(提交 f40c6969

libpq更改

常规

  • in_hot_standby现在由PQparameterStatus()报告(提交 bf8a662c
  • 添加了管道模式(提交 acb7e4eb
  • PQtrace()输出格式改进(提交 198b3716
  • 默认情况下为SSL连接设置服务器名称指示(SNI)(提交 5c55dc8b

连接参数

已修改:

已移除

ECPG更改

  • 添加了DECLARE STATEMENT命令(提交 ad8305a4

psql 更改

  • 添加了\dX命令来显示添加的扩展统计对象(提交 ad600bba
  • \di\dm\dt命令现在显示access method名称(提交 07f386ed
  • 如果命令字符串包含多个查询,则默认情况下将显示所有查询结果(提交 3a513067
  • 添加了SHOW_ALL_RESULTS变量(提交 3a513067
  • \df\do命令现在接受参数类型的规范(提交 a3027e1e

服务器实用程序

添加

已修改

  • initdb
    • 添加了选项--no-instructions(提交 e09155bd
    • 添加了选项--discard-cache(初始提交 b741f4c3
  • pg_waldump
    • 逻辑消息的内容现在也将包含在输出中(提交 9f1cf97b

核心实用程序

添加

已修改

Contrib 模块

添加

已修改

已移除

测试

测试模块

添加

发布计划和预发布测试版本

标记 PostgreSQL 14 开发开始的初始提交是 d10b19e2 (2020-06-07)。

CommitFests

以下 CommitFest 用于 PostgreSQL 14 代码提交