PostgreSQL 9.2

主要特性

SQL 更改

通用

  • 约束
    • CHECK 约束可以声明为 NOT VALID (提交 89779524
  • 视图
    • 添加了 security_barrier 选项 (提交 0e4611c0

已添加

  • COLLATION FOR 表达式 (提交 6688d287

已修改

性能变更

后端更改

通用

postmaster

  • 在 postmaster 和每个后端之间添加了管道,以便更容易检测 postmaster 死亡 (提交 89fd72cb

锁定

  • 添加了快速路径锁 (提交 3cba8999

内存管理

  • 添加了内存屏障支持 (提交 0c8eda62

存储参数

已添加

钩子

添加了以下钩子

数据类型更改

通用

  • 添加了 JSON 类型 (初始提交 5384a73f
  • 添加了 range 类型 (提交 4429f6a9

系统目录更改

已添加

已修改

视图

已修改

系统函数更改

已添加

已修改

索引更改

配置更改

已添加

已修改

移除

libpq 更改

  • 添加了 PQsetSingleRowMode() (提交 ea56ed9a
  • 添加了连接参数 sslcompression (提交 64aea1eb

过程语言更改

PL/pgSQL

  • 添加了 GET STACKED DIAGNOSTICS 命令 (提交 3d4890c0

外部数据包装器更改

  • 计划 API 改进,提供更灵活的连接计划 (提交 b1495393
  • 启用了 外部表 的统计信息收集 (提交 263d9de6
  • 外部表 添加了每列选项 (初始提交 9088d1b9
  • ALTER FOREIGN DATA WRAPPERALTER SERVER 添加了 RENAME 选项 (提交 5bcf8ede
  • CREATE TABLE (LIKE ...) 可以使用 外部表 定义 (提交 a9f2e31c

信息模式

  • 添加了视图 role_udt_grant (提交 d34e142c
  • 添加了视图 udt_privileges (提交 d34e142c
  • 添加了视图 user_defined_types (提交 d34e142c

服务器实用程序

已修改

核心实用程序

已添加

已修改

psql 更改

  • \x 命令添加了 auto 选项 (提交 95d2af16
  • 添加了 \ir 命令 (提交 c7f23494
  • 添加了 \setenv 命令 (提交 e6d9e210
  • 添加了 .psqlrc-X.X (其中 X.X 代表 PostgreSQL 主版本号)的处理 (提交 2795592e
  • 现在识别 PSQL_HISTORYPSQLRC 环境变量 (提交 34c97844
  • 添加了 COMP_KEYWORD_CASE 变量以控制制表符补全中的关键字大小写 (提交 db84ba65

Contrib模块

已添加

已修改

  • file_fdw
    • 添加了 force_not_null 选项 (提交 86a3f2d4
  • pgbench
    • 添加了选项 --tablespace (提交 7c263956
    • 添加了选项 --index-tablespace (提交 7c263956
    • 添加了选项 --unlogged-tables (提交 2d6fee09
  • pg_stat_statements
    • SQL 文本标准化 (提交 7313cc01
    • 添加了脏缓冲区计数 (提交 22543674
    • 添加了列 blk_read_timeblk_write_time,如果启用 track_io_timing 则会填充 (提交 5b4f3466
  • pg_upgrade
    • pg_upgrade 的环境变量已重命名为以 PG 开头;PGPORT 被忽略并被 PGPORTOLD/PGPORTNEW 替换 (提交 a88f4496
    • 默认使用端口 50432 (提交 a88f4496
    • 常规日志改进 (提交 717f6d60
    • 旧集群仅在使用了链接模式时才会被锁定 (提交 2127aac6
    • 添加了用于增量生成更精确统计信息的脚本 (提交 faec2815
    • 移除了日志选项 -g/-G/-l (提交 717f6d60
    • 添加了选项 -o/-O (提交 0dc3f57b
    • 添加了选项 -r/--retain (提交 717f6d60
    • 改进了 -v/--verbose 的行为 (提交 717f6d60
    • 支持升级不包含 postgres 数据库的集群 (提交 a50d860a
  • sepgsql
    • 允许 sepgsql 遵循数据库标签 (提交 291873c1
    • 在创建各种对象时执行 sepgsql 权限检查 (提交 e1042a34
    • 添加了 sepgsql_setcon() 和相关函数以控制 sepgsql 安全域 (提交 523176cb
    • 添加了用户空间访问缓存以提高性能 (提交 4232c4b4
  • vacuumlo
    • 添加了选项 -l (初始提交 b69f2e36

预发布测试版本

标志着 PostgreSQL 9.2 开发开始的初始提交是 c9627922 (2011-06-11)。