PgPedia周刊

每周更新,列出值得关注的提交、PostgreSQL 的其他有趣更改,以及 PgPedia 的笔记和勘误。

理论上每周日发布,但由于个人事务有时会延迟。

RSS Feed


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 索引

2025 年 4 月 20 日

本周 PostgreSQL 18 的更改

随着所有五个 CommitFests 结束,我们现在进入了测试和错误修复阶段,不太可能再添加新功能。话虽如此,本周在 SQL 函数性能和处理方面确实进行了一些调整。

PostgreSQL 18 文章

发布于晚上 9:10

2025 年 4 月 13 日

好了,代码冻结已经来临并过去了,所以 PostgreSQL 18 的开发工作已经全部结束,只剩下测试。RC1 很可能在 9 月初发布,所以请尽早启动您的测试环境!

从现在开始的任何新功能都将用于未来的 PostgreSQL 19,其第一个 CommitFest 将于 7 月开始(2025-07)。

本周 PostgreSQL 18 的更改

PostgreSQL 18 文章

发布于晚上 9:29

2025 年 4 月 11 日

CommitFest 52 (2025-03) – PostgreSQL 18 开发周期中最后一个 CommitFest – 即将结束,一如既往地延续到 3 月底,直到 4 月 8 日的代码冻结

在这个冲刺的最后阶段,有许多有趣的更改,加上个人原因,使得跟踪这些更改变得具有挑战性。一如既往,如果您发现有遗漏,请通过 反馈 表单告知我。

本周 PostgreSQL 18 的更改

  • 优化器
    • x IN (VALUES ...) 在适当时转换为 x = ANY ...
  • 规划器
    • SQL 语言函数现在使用计划缓存
  • 索引
    • 为范围类型添加了 GiST 和 btree 的 sortsupport 例程
    • 添加了 btree 跳跃扫描优化
    • 各种其他 btree 优化
  • ALTER DEFAULT PRIVILEGES
  • COPY
    • COPY TO 可以从物化视图复制行
  • pg_replication_slots
    • 添加了列 two_phase_at
  • array_sort()
    • 用于对数组进行排序的函数
  • btree_gist
    • 支持排序的 gist 索引构建
  • pg_dump
    • 转储统计信息时的效率改进
  • pg_dumpall
    • 添加了选项 -F/--format
  • pg_recvlogical
    • 添加了选项 --failover
  • libpq
    • 添加了连接参数 min_protocol_versionmax_protocol_version
    • 添加了连接参数 sslkeylogfile
发布于凌晨 1:23

2025 年 3 月 30 日

本周(实际上是上周)有很多事情发生(由于个人原因,本期 PgPedia 周报不幸延迟),因为 CommitFest 52 (2025-03) - PostgreSQL 18 开发周期的最后一个 CommitFest - 接近尾声。尽管通常会一直持续到 4 月 8 日的代码冻结

PostgreSQL 18 更改

新功能

  • 动态加载的共享库可以提供用户可查询的元数据
  • 支持虚拟 生成列上的 NOT NULL 约束
  • 添加了新的冲突类型 multiple_unique_conflicts
  • gamma(), lgamma()
    • 新的数学函数
  • pg_get_loaded_modules()
    • 报告有关加载模块的信息
  • max_files_per_process
    • 现在控制额外打开的文件
  • pg_recvlogical
    • 选项 --drop-slot 不再需要提供 --dbname
  • initdb
    • 添加了选项 --no-sync-data-files
  • psql
    • \dx 现在显示默认的扩展版本
    • \watch 的默认间隔现在可配置
  • pg_createsubscriber
    • 添加了选项 --all
  • pg_dump
    • 添加了选项 --sequence-data
    • 添加了选项 --with-data / --with-schema / --with-statistics
  • pg_upgrade
    • 添加了选项 --swap
  • amcheck
    • 添加了函数 gin_index_check()
  • dblink
    • SCRAM 认证直通
  • pg_overexplain
    • contrib 模块,用于扩展 EXPLAIN 输出

回滚

发布于晚上 9:59

2025 年 3 月 23 日

随着 CommitFest 52 (2025-03) – PostgreSQL 18 开发周期中最后一个 CommitFest – 进入最后阶段,出现了一系列活动,并且 PostgreSQL 18 的代码冻结已宣布于 4 月 8 日

本周 PostgreSQL 18 的更改

PostgreSQL 18 文章

发布于晚上 9:38

2025 年 3 月 16 日

CommitFest 52 (2025-03),PostgreSQL 18 开发周期中最后一个 CommitFest,已过半程,本周出现了一些新功能。

PostgreSQL 18 更改

改进和新功能

回滚

  • 对时间性 RESTRICT 外键约束的支持已回滚
    • 这已作为提交 89f908a6 的一部分添加,该提交除此以外仍然有效

PostgreSQL 18 文章

发布于下午 5:45

2025 年 3 月 9 日

CommitFest 52 (2025-03),PostgreSQL 18 开发周期中最后一个 CommitFest,正在进行中。

PostgreSQL 18 更改

  • ALTER TABLE
    • 添加了 ALTER CONSTRAINT ... SET [NO] INHERIT 语法
  • CREATE INDEX
    • 添加了创建 GIN 索引的并行支持 *完成*
    • 如果 autovacuum 设置为 off,则表统计信息将不会更新
  • json_strip_nulls()jsonb_strip_nulls() 现在可以移除 null 数组元素
  • 添加了对 byteainteger 类型之间进行转换的支持
  • PL/pgSQL: 支持命名游标参数的 => 语法
  • postgres_fdw: postgres_fdw_get_connections() 的输出中添加了列 remote_backend_pid
  • 通过 relallfrozen 触发更频繁的 autovacuum
  • 在 WAL 接收器中添加更多关于 WAL 写入的监控数据
发布于晚上 8:15

2025 年 3 月 2 日

CommitFest 52 (2025-03),PostgreSQL 18 开发周期中最后一个 CommitFest,本周启动。

PostgreSQL 18 更改

PostgreSQL 18 文章

发布于晚上 8:10

1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 索引