PostgreSQL 技术日报 (3月14日)|AI 落地 PostgreSQL 拒绝 PPT 空谈
🔔 关注【IvorySQL开源数据库社区】公众号即可获取 PostgreSQL 一手干货与最新动态
⚙️ PostgreSQL技术文章
🧩 PostgreSQL 19:第 3 部分或 CommitFest 2025-11

本文回顾了PostgreSQL 19在2025年11月CommitFest的开发进展。关键改进包括规划器增强功能,如急切聚合和COUNT优化、并行TID Range Scan功能,以及分区表COPY性能改进。新特性包括error_on_null函数、支持临时对象的SQL标准风格函数,以及用于副本和主服务器之间同步的WAIT FOR功能。监控改进涵盖pg_stat_replication_slots内存计数器、pg_buffercache缓冲区分布跟踪和单个关系统计重置时间。其他增强功能包括psql提示符改进、pg_rewind WAL优化、pgbench错误处理和autoanalyze操作的新日志参数。
https://postgrespro.com/blog/pgsql/5972812
🧩 当持续摄入破坏传统 Postgres

传统的PostgreSQL在持续数据摄取工作负载下会遇到困难,因为它的设计假设存在维护所需的安静期。与提供清理谷值的批量ETL不同,来自IoT传感器、交易数据流或指标收集器的连续流消除了这些喘息窗口。这产生了三个关键问题:autovacuum持续运行与写入竞争I/O,checkpoint循环在WAL中产生连续的full-page写入突发,以及ANALYZE统计更新与正在进行的摄取干扰。WAL成为吞吐量上限,每次插入生成2.5-3.5KB的I/O,包括堆和索引记录。增加worker、更快存储或RAM等标准解决方案只能延迟问题,而不能解决PostgreSQL维护假设与从不暂停的工作负载之间的根本架构不匹配。
https://www.tigerdata.com/blog/when-continuous-ingestion-breaks-traditional-postgres
📨 PostgreSQL Hacker 电子邮件讨论精选
🧩 使用 SIMD 加快 COPY FROM 文本/CSV 解析
Nathan Bossart在经过广泛测试和审查后提交了用于COPY FROM文本/CSV解析的SIMD优化补丁。在Manni Wood提供的基准测试显示显著改进后,v17补丁得到最终确定,特别是对于宽CSV数据(ARM上快42-61%,x86上快49-61%)。Nazir Bilal Yavuz发现v15版本在gcc 14.2.0上存在性能回归问题,通过重新添加hit_eof处理的临时变量得到解决。Greg Burd确认该实现在多个架构上都能工作,包括RISC-V、SPARC和ARM,但指出RISC-V向量类型由于无大小特性需要特殊处理。团队讨论了添加边界条件测试以提高代码覆盖率,目前覆盖率看起来足够但仍有针对性正确性测试的空间。
https://www.postgresql.org/message-id/CAKWEB6pMbdMDvhfaX1Z0eSULVQFYhEhssaRHdOxAX_5OYubxKw@mail.gmail.com
🧩 缓冲区锁定是特殊的(hints、checksums、AIO writes)
Alexander Lakhin发现了由提交82467f627引入的一个bug,在哈希索引表上执行特定DELETE操作序列时会触发bufmgr.c中的断言失败。该问题发生在哈希索引扫描期间BufferBeginSetHintBits进行缓冲区验证时。Andres Freund承认这个bug是一个"愚蠢的小错误",Alexander Kuzmenkov也私下报告了这个问题。与此同时,Antonin Houska提交了一个改进MVCC快照宏注释的补丁,删除了关于可见元组的冗余文本。Andres认为被删除的文本对于解释MVCC和非MVCC扫描类型之间的差异是相关的,在非MVCC扫描中元组可能不会被一致地看到。注释改进已经推送并进行了修订,包括更好地解释该修复如何解决逻辑解码故障问题。
https://www.postgresql.org/message-id/52d064b8-63bd-45df-a405-b6017d49b300@gmail.com
🧩 [PATCH] 支持自动序列复制
讨论集中在PostgreSQL逻辑复制中自动序列复制补丁上。主要贡献者Zhijie Hou在补丁集第12版中解决了多个评审意见。关键技术讨论包括优化权限检查和漂移检测顺序,将昂贵操作移至函数流程后期,以及为混合热/冷序列实现按序列睡眠间隔以获得更好性能。补丁现在包含三个组件:基本自动序列复制(0001)、同步worker中的序列信息缓存(0002)和REFRESH SEQUENCES中的直接同步(0003)。评审者识别出几个问题,包括LSN更新逻辑的潜在问题——如果序列不漂移,页面LSN可能永远不会更新,不正确的系统缓存回调使用(SUBSCRIPTIONRELMAP vs SUBSCRIPTIONREL),以及内存管理问题。还有关于使用缓存信息时检测从发布者删除序列的担忧。讨论显示了积极的协作,多个评审者提供了详细的实现细节技术反馈。
https://www.postgresql.org/message-id/TY4PR01MB16907AB8416E53B843A506E659445A@TY4PR01MB16907.jpnprd01.prod.outlook.com
🧩 在发布中跳过模式更改
讨论集中在PostgreSQL的CREATE PUBLICATION命令中EXCEPT子句的语法设计上,用于排除特定表。争论的焦点是使用"TABLE (t1, t2)"还是其他语法如"TABLES (t1, t2)“或"TABLES IN (t1, t2)”。Masahiko Sawada认为"TABLE (…)“与PostgreSQL中用于函数返回的现有语法冲突。Peter Smith支持一种灵活的方法,允许"TABLE t1, t2"和"TABLE (t1, t2)”,以与现有publication语法保持一致。Amit Kapila建议单数"TABLE"遵循PostgreSQL对指定单个对象的约定,而复数形式用于模式范围的操作。团队还讨论了排除模式和序列的未来可扩展性,担心语法局部性以及当一起使用多个EXCEPT子句时可能出现的歧义。
https://www.postgresql.org/message-id/CAHut+PssG+sHeV+Xo0g=S7xBb9FgDPjHYDR4iSuOdYXDq-Psng@mail.gmail.com
🧩 在逻辑复制中确认远程刷新之前退出walsender
讨论的焦点是引入wal_sender_shutdown_timeout的补丁,该补丁允许在PostgreSQL关闭期间终止walsender,而无需等待远程刷新确认。Alexander Korotkov修订了补丁以解决之前的问题,添加了默认值为-1(禁用)的新GUC以避免行为变化。该补丁影响逻辑和物理复制,并包含新的WalSndDoneImmediate()函数。Fujii Masao对超时机制的有效性提出担忧,报告尽管设置了1ms超时,仍出现26秒延迟,质疑用户是否能确定合适的值。Andrey Silitskiy承认了时间问题并提供了与WalSndComputeSleeptime相关的修复。Greg Sabino Mullane建议测试超出-1和0的正超时值,Silitskiy提议200ms测试案例。发现了包括变量作用域和函数参数格式化在内的小代码问题。该补丁旨在防止关闭期间walsender挂起,同时保持复制协议兼容性。
https://www.postgresql.org/message-id/CAHGQGwHRFw6G=ib+z8aueoJ6a3EsO5hkEXEh5KeTakcgoPoa5g@mail.gmail.com
🧩 将 COPY … ON_ERROR ignore 更改为 ON_ERROR ignore_row
Fujii Masao提议为file_fdw外部表的ON_ERROR='set_null’功能添加回归测试。在Peter Eisentraut提交启用此功能的补丁后,Fujii注意到与ON_ERROR='ignore’不同,目前没有回归测试覆盖file_fdw中的set_null行为。他建议添加测试以确保功能正常运行并提高测试覆盖率。Yi Ding同意添加建议的测试,但推荐使用"SELECT a, b IS NULL"来显式验证空值。Fujii回应说现有的file_fdw测试设置使用"\pset null null"将NULL值显示为"null",通过检查此显示文本足以验证空值处理。讨论重点关注测试方法而非核心功能,Fujii计划在无异议的情况下提交测试补丁。
https://www.postgresql.org/message-id/CAHGQGwFTRgYXS0V7=e3AYox5PVbMU034BQoxZkX7kMyp5beLMw@mail.gmail.com
🌐 社交媒体动态
🧩 在班加罗尔参加 PGConf India 2026 期间,我们CYBERTEC PostgreSQL 服务和支持印度团队度过了美好的时光

CYBERTEC PostgreSQL 服务和支持印度团队参加了在班加罗尔举行的 PGConf India 2026。团队表达了对本次会议的热情,并表示期待为 PostgreSQL 社区做出贡献。团队成员包括 Rohit Gupta、Abhipsa Padhi、Kaibalya Prasad Nath 和 Anil kakkeri。该活动还提到了 PGDa…
https://www.linkedin.com/feed/update/urn:li:activity:7438256357234982912/
🧩 请在月底的KubeCon 2026上找到我们和我们的合作伙伴Lightbits!

该公司宣布与 Lightbits 在阿姆斯特丹的 KubeCon 2026 上建立合作伙伴关系。该合作将原生 NVME/TCP 与企业级 PostgreSQL 相结合。Lightbits 发明了 NVMe over TCP 存储协议,将其原生嵌入到其软件定义的块存储中,以使用通用基础设施实现超低延迟和高吞吐量。参观者可在阿姆斯特丹 Rai 会展中心的 89…
https://www.linkedin.com/posts/cybertec-postgresql_kubecon-cybertec-postgresql-activity-7438162174927212544-40U2
🧩 AI在这里被真正付诸实践

这是在CYBERTEC PostgreSQL服务和支持总部的一个普通周四晚上,AI在这里被真正付诸实践,而不是仅仅在PPT演示中被讨论。该帖子强调,真正的AI实施发生在这家公司中,具体是在PostgreSQL、数据科学和合规应用的背景下。
https://www.linkedin.com/posts/activity-7437920890664873984-n5rQ
AtomGit 是由开放原子开源基金会联合 CSDN 等生态伙伴共同推出的新一代开源与人工智能协作平台。平台坚持“开放、中立、公益”的理念,把代码托管、模型共享、数据集托管、智能体开发体验和算力服务整合在一起,为开发者提供从开发、训练到部署的一站式体验。
更多推荐

所有评论(0)