PgPedia周刊

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

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

RSS Feed


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

2023年9月24日

PostgreSQL 提交的值得关注的变更

请注意,提交按其在提交日志中的出现顺序显示,这可能不反映单个提交的创建日期。

请参阅 PostgreSQL GIT 提交日志 查看完整的提交列表。

发布于下午 4:16

2023年9月17日

本周的重头戏是 PostgreSQL 16 的发布 - 有关文章的有用概述请参见 此处。除此之外,提交日志方面非常平静,主要是小的修复。

发布于下午 6:34

2023年9月10日

PostgreSQL 提交的值得关注的变更

  • 5a3423ad (2023-09-08) 添加 JIT deform_counter
  • 04a09ee9 (2023-09-08): 使 WaitEventSetWait() 能够报告 Windows 上的多个事件。
  • 3af72179 (2023-09-07): 更新 information_schema 中非空约束的定义
  • e1c6db63 (2023-09-07): pg_basebackup: 在 PQbackendPID() 下生成有效的临时槽名称 向后移植约11个版本
  • 0da096d7 (2023-09-07): 修复恢复冲突 SIGUSR1 处理。
  • 8c16ad3b (2023-09-06): 允许在前端工具中使用 syncfs()。
  • cccc6cde (2023-09-06): 为前端支持函数添加 syncfs() 支持。
  • 3ed19567 (2023-09-06): 使同步方法 (sync methods) 的枚举可供前端代码使用。
  • 59cbf60c (2023-09-06): 移除 wait_event_names.txt 中等待事件名称的列
  • 414f6c0f (2023-09-06): 使用更一致的等待事件对象和类型名称
  • f691f5b8 (2023-09-05): 移除 "快照太旧" 功能。
  • 2b8e5273 (2023-09-04): 修复与已删除数据库共享统计数据的处理 向后移植约15个版本

请注意,提交按其在提交日志中的出现顺序显示,这可能不反映单个提交的创建日期。

请参阅 PostgreSQL GIT 提交日志 查看完整的提交列表。

发布于下午 6:45

2023年9月2日

PostgreSQL 16 文章

PostgreSQL 17 文章

PostgreSQL 17 变更

log_connections

log_connections 现在会明确记录没有 authn ID 的连接,例如 trust 连接(提交 e48b19c5)。

PostgreSQL 16 及更早版本中,trust 连接的日志记录方式如下:

[2023-08-30 08:37:17 JST] [unknown] [unknown] [unknown] LOG:  00000: connection received: host=127.0.0.1 port=35392
[2023-08-30 08:37:17 JST] [unknown] postgres postgres LOG:  00000: connection authorized: user=postgres database=postgres application_name=psql

PostgreSQL 17 及更高版本中

[2023-08-30 08:39:29 JST] [unknown] postgres postgres LOG:  00000: connection authenticated: user="postgres" method=trust (/var/lib/pgsql/data/pg_hba.conf:5)
[2023-08-30 08:39:29 JST] [unknown] postgres postgres LOG:  00000: connection authorized: user=postgres database=postgres application_name=psql
发布于晚上 9:49

2023年8月26日

提醒您,即将到来的 PostgreSQL 16 版本日期 已公布

  • 2023-08-31 为 PostgreSQL 16 rc1待定项目的截止日期为 2023-08-26 12:00 UTC)
  • 2023-09-14 为公开发布 (GA)(暂定)

rc1 已打上标签(提交 d94dadcc),但在撰写本文时尚未标记。

PostgreSQL 16 文章

PostgreSQL 17 功能

命名的 NOT NULL 约束

一个有趣的新增功能,刚从提交列表中出现,是 b0e96f31编目非空约束”,经过漫长的开发过程和几次试错,终于添加了命名的 NOT NULL 约束。实际上,这意味着在 PostgreSQL 16 及更早版本中定义的表,如下所示:

postgres=# CREATE TABLE foo (id INT NOT NULL);
CREATE TABLE

postgres=# \d+ foo
                                           Table "public.foo"
 Column |  Type   | Collation | Nullable | Default | Storage | Compression | Stats target | Description 
--------+---------+-----------+----------+---------+---------+-------------+--------------+-------------
 id     | integer |           | not null |         | plain   |             |              | 
Access method: heap

PostgreSQL 17 中变成

postgres=# CREATE TABLE foo (id INT NOT NULL);
CREATE TABLE

postgres=# \d+ foo
                                           Table "public.foo"
 Column |  Type   | Collation | Nullable | Default | Storage | Compression | Stats target | Description 
--------+---------+-----------+----------+---------+---------+-------------+--------------+-------------
 id     | integer |           | not null |         | plain   |             |              | 
Not-null constraints:
    "foo_id_not_null" NOT NULL "id"
Access method: heap

NOT NULL 约束也可以显式定义

postgres=# CREATE TABLE foo (
             id INT,
             CONSTRAINT foo_id_is_not_null NOT NULL id
           );
CREATE TABLE

postgres=# \d+ foo
                                           Table "public.foo"
 Column |  Type   | Collation | Nullable | Default | Storage | Compression | Stats target | Description 
--------+---------+-----------+----------+---------+---------+-------------+--------------+-------------
 id     | integer |           | not null |         | plain   |             |              | 
Not-null constraints:
    "foo_id_is_not_null" NOT NULL "id"
Access method: heap
发布于下午 8:37

2023年8月20日

即将到来的 PostgreSQL 16 版本日期 已公布

  • 2023-08-31 为 PostgreSQL 16 rc1待定项目截止日期:2023-08-26 12:00 UTC)
  • 2023-09-14 为公开发布 (GA)(暂定)

PostgreSQL 17 新增了一个看起来很有用的系统目录视图 pg_wait_events

发布于下午 2:51

2023年8月13日

又一个平静的夏季 PostgreSQL 周,仅有季度小版本更新的发布和 PostgreSQL 16 beta3

发布于下午 6:24

2023年8月6日

对于 PostgreSQL 来说,这是一个平静的周,在 CommitFest 43 结束后。下周将迎来常规的季度小版本发布,很可能还有 PostgreSQL 17beta3 版本。

发布于下午 6:42

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