PostgreSQL 8.0

主要特性

后端更改

通用

规划器

  • 在生成选择性估算时,能够将“stable”函数折叠为常量(提交 9a633cbb

SPI

  • 添加了以下函数(提交 65a0db19
    • SPI_getargtypeid()
    • SPI_getargcount()
    • SPI_is_cursor_plan()

Vacuuming

  • 添加了基于成本的 vacuum 延迟功能(提交 f425b605

WAL

  • 添加了时间线(timelines)概念(提交 2042b342

数据类型更改

  • inetcidr 数据类型添加了 IPv6 支持(提交 945543d9

SQL 更改

通用

  • SQL 表达式可以包含任意行表达式(提交 2f63232d
  • 为约束、索引和序列自动生成默认名称(提交 45616f5b

已添加

已修改

系统目录更改

已添加

已修改

视图

已修改

系统函数

已添加

已修改

配置更改

已添加

已修改

已弃用

移除

复制更改

配置

已添加

  • recovery_target_inclusive(提交 66ec2db7
  • recovery_target_time(提交 66ec2db7
  • recovery_target_timeline(提交 2042b342
  • recovery_target_xid(提交 66ec2db7

过程语言变更

PL/pgSQL

  • 允许使用 ELSEIF 作为 ELSIF 的替代(提交 480777e5
  • 添加了 NULL 语句(提交 64410289
  • 添加了对 EXCEPTION 子句的支持(初始提交 beda4814
  • FOR 循环语法改进(提交 a72dd7a9

PL/Perl

  • 以下改进(提交 1732cb0d
    • 共享数据空间和命名空间
    • 支持触发器
    • 记录现在可以作为哈希引用返回
    • 新函数 spi_exec_query()
    • PL/Perl 函数可以返回 RECORDSETOF RECORD

libpq 更改

  • 添加了 PQcancel() 函数(提交 44e8a968
  • 添加了 PQprepare()/PQsendPrepared() 函数(提交 9d9cfb1a
  • 添加了 PQserverVersion()(提交 f79fbb2b

信息模式 变更

  • 支持 information_schema.parameters 中的命名参数(提交 9d888807

服务器实用程序

已修改

  • initdb
    • 从 shell 脚本转换为功能齐全的 C 程序(初始提交:279598bb
    • 添加了 --pwfile 选项,供调用 initdb 的工具使用(提交 1b80b6da
  • pg_ctl
    • 从 shell 脚本转换为功能齐全的 C 程序(提交 f3d6d948
    • pg_ctl 不再能被 root 用户执行(提交 c58675b4
    • 为 Windows 支持添加了 registerkill 选项(提交 f8dd00c3
  • pg_resetxlog
    • 禁止以 root 用户身份执行(提交 75e39c44

核心实用程序

已修改

  • pg_dump
    • 在使用 -v/--verbose 选项时显示开始/停止时间 (提交 91366138)
  • pg_dumpall
    • pg_dump 添加了选项 -S/--superuser-O/--no-owner-X disable-dollar-quoting/--disable-dollar-quoting-X disable-triggers/--disable-triggers(提交 a0db74a3
    • 在使用 -v/--verbose 选项时显示开始/停止时间 (提交 91366138)
  • pg_restore
    • 添加了 -e/--exit-on-error 选项(提交 daa076c4
    • 添加了 --use-set-session-authorization 选项(提交 dc0e76ca

psql

  •  能够处理文件名的波浪号用户展开(提交 55a92063

Contrib模块

已添加

已修改

其他