PostgreSQL 技术日报 (4月2日)|社区工具更新与内核补丁讨论速递

🔔 关注【IvorySQL开源数据库社区】公众号即可获取 PostgreSQL 一手干货与最新动态

⚙️ PostgreSQL技术文章

🧩 Percona Operator for PostgreSQL 2.9.0:PostgreSQL 18 成为默认版本、PVC 快照备份、LDAP 支持等新特性

Percona Operator for PostgreSQL 2.9.0 发布了重要更新,用于在 Kubernetes 上运行生产级 PostgreSQL。此版本将 PostgreSQL 18 设为默认版本,并新增基于 PVC 快照的备份功能,可实现更快的恢复操作。新的 LDAP 认证支持增强了企业级安全集成能力。该 Operator 还改进了数据库生命周期管理和运维可观测性功能。这些增强旨在简化容器化环境中 PostgreSQL 的部署和管理,为生产工作负载提供更好的备份方案和安全选项。

www.percona.com/blog/percon...

🧩 pg_ivm 1.14 版本发布

pg_ivm 1.14 版本已发布,修复了增量视图维护的重要错误。这个 PostgreSQL 扩展通过只计算增量变化而非完全重算来即时更新物化视图。本次发布解决了两个关键问题:包含交叉连接的外连接视图维护错误,此问题会导致增量维护失败;以及连接条件列包含 NULL 值的外连接视图问题,该问题会阻止正确的增量维护。这些修复提升了 pg_ivm 核心功能的可靠性,确保物化视图能够自动保持最新状态。

www.postgresql.org/about/news/...

🧩 文档数据库的诚实之道

MongoDB 经常受到不公正的批评,它在灵活模式设计、快速迭代和文档型数据处理方面表现出色。但当团队将 MongoDB 用于时序数据工作负载时就会出现问题,因为这类数据并不能从文档结构中获益。时序数据由带时间戳的扁平、统一的测量值组成,而不是可变的层次化文档。MongoDB 的 WiredTiger 存储引擎在处理高频率仅追加写入时表现不佳,缺乏原生的基于时间的分区功能,在大规模时间范围聚合查询中性能较差。迁移到普通 Postgres 并不能自动解决这些问题,因为两者在时序数据的存储模型方面都有类似的限制。真正的选择不在于 MongoDB 还是 Postgres,而在于文档存储还是像 TimescaleDB 这样专门构建的时序解决方案。

www.tigerdata.com/blog/docume...

📨 PostgreSQL Hacker 电子邮件讨论精选

🧩 ALTER TABLE:当操作未递归应用到分区时给出警告

Chao Li 正在开发一个补丁,用于在 ALTER TABLE 命令未使用 ONLY 关键字但实际上不会自动递归到分区时添加 NOTICE 消息。Zsolt Parragi 指出 SET ACCESS METHOD 应该包含在受影响的子命令列表中,因为该命令只修改父表的目录条目,现有分区保持不变,仅影响未来的直接子分区。Chao Li 承认了这个疏漏,发布了 v9 版本补丁,加入了 SET ACCESS METHOD 并添加了测试用例,确保在子命令失败时不显示提示消息。随后在 v10 中修复了测试失败问题,不过邮件中最初忘记添加附件。

www.postgresql.org/message-id/...

🧩 REPACK 的并发执行问题

讨论的焦点是为 PostgreSQL 实现 REPACK CONCURRENTLY 功能,特别是处理与逻辑解码的交互问题。主要问题在于 REPACK 操作可能阻塞逻辑复制的快照构建,因为 snapbuild 机制需要等待所有正在运行的事务完成才能推进到一致状态。提议的解决方案是在 snapbuild.c 中特殊处理以忽略 REPACK 事务,因为它们不会进行与逻辑解码相关的目录更改,且生成的 WAL 记录不需要发送到下游。然而,Amit Kapila 质疑为什么 REPACK 需要与其他仅包含 DML 的事务区别对待。讨论还涉及复制槽预留的担忧以及按数据库限制 REPACK 等替代方案。Srinath Reddy 报告了 REPACK 早期失败时的崩溃问题,并提供了在流程早期初始化状态标志的修复方案。Alvaro Herrera 添加了一个专门用于管理 REPACK 操作复制槽的 GUC 配置。

www.postgresql.org/message-id/...

🧩 pg_waldump: 支持解析 tarfile 中的 WAL 文件

讨论涉及 pg_waldump 在处理 GNU tar 在支持稀疏文件的文件系统(如 ZFS/BTRFS)上创建的 PAX 格式归档时遇到的问题。问题源于 PostgreSQL 的 astreamer_tar.c 代码无法正确解析 PAX 扩展头,导致提取 WAL 文件时失败。Thomas Munro 为测试推送了一个变通方案,并建议通过检查 PaxHeaders/$NAME 来改进错误检测,提供更清晰的错误消息而不是通用的"无法找到 WAL"错误。Tom Lane 强调忽略 PAX 扩展头是危险的,因为它们可以任意改变文件头的解释,提议在 v19 中完全拒绝此类文件。该问题同样影响 pg_verifybackup。Andrew Dunstan 提出了 Windows 测试兼容性的担忧,而 Andres Freund 反对不必要地禁用 Windows 测试。共识是实现更好的检测和拒绝不支持的 TAR 格式,而不是在当前发布周期中尝试完整的 PAX 支持。

www.postgresql.org/message-id/...

🧩 元组解构性能优化

在元组解构加速工作的提交 c456e391138 之后,Alexander Lakhin 发现了一个断言失败,由 SELECT JSON_ARRAY(VALUES (('', ''))); 触发。错误发生在 heaptuple.c 中,断言 "attlen > 0 || attlen == -1" 失败。Junwang Zhao 分析认为解析器将空字符串转换为 UNKNOWNOID 类型的 Const 节点,导致 TupleDescInitEntry 错误地填充属性条目,从而引发 nocachegetattr 失败。他建议移除 pg_assume 断言,因为这种情况可能合法出现。Jian He 确认该问题也可以通过 SELECT row_to_json(('', '')); 触发,并指出虽然 transformRowExpr 可以将 UNKNOWNOID 常量强制转换为 TEXTOID,但要保证 nocachegetattr 中"堆元组中不存在 cstring"的假设仍然具有挑战性。David Rowley 已确认收到报告并正在研究修复方案。

www.postgresql.org/message-id/...

🌐 社交媒体动态

🧩 Intent HQ助力营销人员从耗时数周的受众细分转向基于高影响力机会的实时营销执行

Intent HQ通过IntentOne智能框架重塑营销运营模式,将原本需要数周的受众细分工作转变为专注于高影响力机会的实时营销执行。该框架让营销经理能够自主创建、测试和优化数千个营销活动,并根据客户反馈和活动表现持续调整策略。平台集成Databricks Lakebase和Unity Catalog,在统一环境中实现智能体间的洞察共享,同时确保数据安全留...

www.linkedin.com/posts/datab...

🧩 pgconf.dev2026大会纪念T恤发布!

pgconf.dev 2026大会发布了官方纪念T恤,设计中的PostgreSQL吉祥物Slonik身着特别服装,以庆祝PostgreSQL诞生30周年。这款限量T恤仅向大会参会者提供。会议将于2026年5月19日至22日在温哥华举行。这次活动意义重大,将庆祝PostgreSQL数据库系统发展30年来的重要里程碑,见证其在开发和社区建设方面的巨大成就。

www.linkedin.com/posts/pgcon...

🧩 如果你要参加 Postgres大会,别错过这个议题!

这是一条简短的宣传信息,鼓励参加 Postgres 大会的人员关注某个特定议题。内容强调与会者不应错过这个特定的会议议题,但没有提供关于议题主题、演讲者或具体内容的详细信息。

www.linkedin.com/posts/pgedg...

🔥 HOW 2026 报名进行中

一场真正以技术为核心的 PostgreSQL 大会 HOW 2026 PostgreSQL & IvorySQL 技术峰会火热报名中 📍 2026 年 4 月 27 日 - 28 日|济南

相关推荐
2601_955781982 分钟前
私有化本地 AI,Windows 平台 OpenClaw 功能详解与配置
人工智能·开源·github·open claw
zzz_23682 分钟前
【Redis】分布式锁完整演进
数据库·redis·分布式
mN9B2uk1723 分钟前
数据库的约束简介
java·数据库·sql
计算机安禾25 分钟前
【数据库系统原理】第4篇:关系数据结构的形式化定义:域、笛卡尔积与关系模式
数据结构·数据库·算法
Henry-SAP25 分钟前
SAP(ERP) BOM变更实时同步MRP方案
数据库·云原生
AI人工智能+电脑小能手27 分钟前
【大白话说Java面试题 第99题】【Mysql篇】第29题:如何选择合适的分布式主键方案?
java·数据库·分布式·mysql·面试
花酒锄作田38 分钟前
DeepAgents - 使用Postgres作为Checkpoint
postgresql·deepagents
提子拌饭1331 小时前
个人月事记录表应用 - 鸿蒙PC Electron框架完整实现指南
前端·javascript·华为·electron·前端框架·开源·鸿蒙系统
云樱梦海1 小时前
OpenClaw官方:OpenClaw Windows Node 实战(1.5K ★ 开源推荐)
windows·开源·github·openclaw
倔强的石头_1 小时前
kingbase备份与恢复实战(七)—— 恢复演练与验收:从“能恢复”到“可交付预案”
数据库