↑↓ 选择 ↵ 打开 ⌫ 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

文档版本对比

POSTGRESQL · VERSION COMPARE

PostgreSQL 9.0.1 的版本变更

本次发布的完整功能、修复与兼容性说明,以及它们在其他版本中的关联记录。

查看该版本全部变更
查看该版本全部变更

从起始版本之后,看到目标版本为止。大版本名称代表该系列首个正式版本。

收录 PostgreSQL 9.0 起的 17 个大版本、352 份发布说明;数据更新于 2026-09-26。

本次发布的全部变更

9.0.1

2010-10-04

导出 JSON
10项变更功能、修复与改进
1次版本发布按发行版本归档
1个 CVE本版说明中提及的漏洞编号

9.0.1 历史版本维护截止 2015-10-08

本版提及的安全记录 1 个 CVE
本版发布说明提及的 CVE,可能包含已有漏洞的后续修复
CVE / 问题严重程度修复版本
CVE-2010-3433

在 PL/Perl 和 PL/Tcl 中为每个调用方 SQL 用户 ID 使用单独的解释器

—9.0.1

PostgreSQL 9.0.1

升级与兼容性说明

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

安全相关在 PL/Perl 和 PL/Tcl 中为每个调用方 SQL 用户 ID 使用单独的解释器

变更

在 PL/Perl 和 PL/Tcl 中为每个调用方 SQL 用户 ID 使用单独的解释器(Tom Lane)

此变更防止了可通过破坏稍后将在同一会话中以另一 SQL 用户身份执行的 Perl 或 Tcl 代码(例如在 SECURITY DEFINER 函数内)而造成的安全问题。大多数脚本语言都提供许多实现这一点的手段,例如重新定义目标函数调用的标准函数或操作符。如果没有此变更,任何拥有 Perl 或 Tcl 语言使用权的 SQL 用户基本上都能以目标函数所有者的 SQL 权限为所欲为。

此变更的代价是 Perl 和 Tcl 函数之间的有意通信变得更困难。为提供出路,PL/PerlU 和 PL/TclU 函数继续每会话只使用一个解释器。这不被视为安全问题,因为所有这类函数本来就以数据库超级用户的信任级别执行。

声称提供可信执行的第三方过程语言很可能存在类似的安全问题。我们建议就安全关键用途联系你所依赖的任何 PL 的作者。

感谢 Tim Bunce 指出此问题(CVE-2010-3433)。

BUG 修复改进 pg_get_expr() 的安全修复,使该函数仍可用于子 SELECT 的输出

变更

改进 pg_get_expr() 的安全修复,使该函数仍可用于子 SELECT 的输出(Tom Lane)

BUG 修复修复占位符求值位置不正确的问题

变更

修复占位符求值位置不正确的问题(Tom Lane)

当外连接的内侧是输出列表中含非严格表达式的子 SELECT 时,该缺陷可能导致本应为空的查询输出非空。

BUG 修复修复连接消除对占位符表达式的处理

变更

修复连接消除对占位符表达式的处理(Tom Lane)

BUG 修复修复 UNION ALL 成员关系可能被重复扫描的问题

变更

修复 UNION ALL 成员关系可能被重复扫描的问题(Tom Lane)

其他改进防止取消监听后 ProcessIncomingNotify() 中的无限循环

变更

防止取消监听后 ProcessIncomingNotify() 中的无限循环(Jeff Davis)

BUG 修复防止 show_session_authorization() 在自动清理进程中崩溃

变更

防止 show_session_authorization() 在自动清理进程中崩溃(Tom Lane)

其他改进重新允许输入公元 0001-01-01 之前的儒略日期

变更

重新允许输入公元 0001-01-01 之前的儒略日期(Tom Lane)

像 'J100000'::date 这样的输入在 8.4 之前可行,但被新增的错误检查无意中破坏。

其他改进让 psql 在自动提交关闭模式下把 DISCARD ALL 识别为不应包裹在事务块中的命令

变更

让 psql 在自动提交关闭模式下把 DISCARD ALL 识别为不应包裹在事务块中的命令(Itagaki Takahiro)

其他改进更新构建基础设施和文档,反映源代码仓库从 CVS 迁移到 Git 的变化(Magnus Hagander 等)

变更

更新构建基础设施和文档,反映源代码仓库从 CVS 迁移到 Git 的变化(Magnus Hagander 等)

这份对比如何生成?

对比以 PostgreSQL 发行说明为依据,汇总起始版本之后、目标版本及之前的变更,支持同一大版本内的小版本更新,以及跨大版本升级。跨大版本时,旧分支的维护记录只纳入到下一大版本首次发布之日,所有记录均不晚于目标版本的发布日期。大版本名称(如 18)指首个正式版本(18.0);测试版与开发快照会单独标注。

条目正文来自本站中文手册,版本清单、条目覆盖与提交依据逐一核对上游英文原文。每条变更保留完整说明与原文链接;分类用于辅助浏览,具体影响、适用条件与升级操作请阅读条目正文和各版本的升级说明。

同一修复可能回补到多个版本分支。对比会保守合并可确认相同的条目,并保留各分支完整说明;已知由起始版本包含的修复会排除。一条说明包含多个独立修复时,只有全部已包含才排除。大版本新功能不因与旧版补丁存在提交关联而合并,不能确认相同的条目继续保留。这是发行说明的累计差异,不能覆盖二进制程序之间的每一处代码变化。

CVE 独立依据 PostgreSQL 官方安全公告与漏洞记录计算:起始版本受影响、目标版本已修复或不受影响的漏洞才计入,按编号去重。目标版本仍受影响的漏洞另行提示;安全变更条数与 CVE 数量分别统计。

交互参考 pgversions.com 与 pgversionreport,内容来自 PostgreSQL 发行说明。更多历史资料见发行说明归档。