↑↓ 选择↵ 打开⌫ 切换范围完整搜索

PG.CENTER 连接 PostgreSQL 文档、百科与生态知识。由 Pigsty 维护。

PostgreSQL 资讯

保留原始来源与发布日期的新闻、博客和活动。

Neon 用 WAL 加 S3 重做面向智能体的存储层

发布于 2026-09-10T10:59:49.096255Z · Neon 博客 AI Neon 存储

Neon 的 Carlota Soto 认为传统 OLTP 数据库的笨重来自基础设施层,而不是 PostgreSQL 本身。文章介绍 Lakebase 的存储设计:把 WAL 与 S3 结合,面向 AI agent 的负载,让实例可以随时分支、随用随弃,不必为每个短暂环境准备一整套常驻基础设施。作者的主张是数据库基础设施要匹配 agent 的使用方式,只要存储层选对,PostgreSQL 完全能承担这类场景。这是厂商视角的架构介绍,开销与恢复行为没有给出数据。

阅读更多……

预备语句的第六次执行为何让查询突然变慢

发布于 2026-09-10T10:59:49.093327Z · The Build 性能 计划缓存 预备语句

Christophe Pettus 拆解了 PostgreSQL 的计划缓存。简单查询协议下的文本 SQL 每次都要重新解析、重写、规划再丢弃,PostgreSQL 没有跨会话的共享计划缓存,计划只挂在预备语句、PL/pgSQL 和 SPI 这类对象上。带参数的预备语句真正的分岔点在第六次执行:此前用定制计划,之后才可能改用通用计划,不少“什么都没改查询却变慢了”正出自这一刻。文中结论以 PostgreSQL 18 核对。

阅读更多……

逻辑复制冲突日志表遇超大字段值会中断

发布于 2026-09-10T10:59:49.090924Z · PostgreSQL hackers 冲突 逻辑复制

冲突日志历史表的提案里发现一个缺陷:conflict_log_destination 设为 table 时,冲突行里的超大字段值会让逻辑复制中断。根因是 JSON 转义膨胀,escape_json 把控制字符展开成 6 字节序列,190 MB 的值膨胀到约 1.14 GB,越过 varlena 的 1 GB 上限。Amit Kapila 主张省略超大列的值并在原位留标记,Dilip Kumar 据此把每列上限定为 64 KB。

阅读更多……

PostGIS 3.7.0rc1 发布,修掉多个几何解析缺陷

发布于 2026-09-10T10:59:49.086781Z · PostGIS PostGIS 安全 扩展

PostGIS 团队发布 3.7.0rc1,3.7 大版本的候选版,相对 beta2 只做缺陷修复,要求 PostgreSQL 14 至 19rc1 与 GEOS 3.10 以上。修复集中在几何输入的健壮性:NURBSCURVE 包围盒遇到非有限控制点会让后端 CPU 陷入拒绝服务,畸形 SRID 前缀和畸形多边形环也能绕过校验,多项问题来自 OSS-Fuzz 与安全扫描。升级后执行 postgis_extensions_upgrade() 即可。

阅读更多……

PostgreSQL 19 的分区合并与分割功能面临回退

发布于 2026-09-10T10:59:49.083733Z · PostgreSQL hackers PG19 分区 回退

ALTER TABLE MERGE/SPLIT PARTITIONS 已提交进 PostgreSQL 19,收尾阶段却暴露出大量边界情况。Jian He 提交补丁,提议在存在触发器、本地约束、不属于分区索引层次的本地索引、列默认值不一致或访问方法不同时直接报错,因为没有机制重建这些对象。Robert Haas 强烈反对保留:操作全程持有 AccessExclusiveLock,数据全量复制且没有优化,产出的分区既不是源分区的克隆也不是干净的新分区,他主张在发布前回退。

阅读更多……

DuckDB 2.0 用 PEG 解析器替换 PostgreSQL 前端

发布于 2026-09-10T10:59:49.034944Z · DuckDB 博客 SQL 扩展 解析器

解析器是 SQL 方言、错误信息、补全和语法扩展的共同入口。DuckDB 从 2018 年沿用至今的 PostgreSQL 派生解析器将在 2.0 被 PEG 解析器取代,新前端接受完整 DuckSQL 后转换成原有 AST,绑定器和执行流水线不变。PEG 让语法分支的优先级显式化,避开 LALR 的移进归约冲突,扩展也可以直接扩展词法器和语法规则。官方称既有查询应继续工作,升级前仍应用生产 SQL 语料回归。

阅读更多……

PostGIS Tiger Geocoder 2025.2 发布,也是倒数第二程

发布于 2026-09-10T10:59:49.026023Z · PostGIS 博客 PostGIS 地理编码 扩展

Regina Obe 发布 postgis_tiger_geocoder 2025.2,对应 2025 年美国人口普查 Tiger 数据集。这个纯 plpgsql 扩展曾是 PostGIS 核心的一部分,现在单独维护。本次修正了安装目标、并行构建和扩展依赖的模式限定三处问题,要求 PostgreSQL 16 及以上。升级执行 ALTER EXTENSION ... UPDATE。PostGIS 3.6 系列是最后一个包含它的版本。

阅读更多……

local_preload_libraries 的安全模型只有一个目录

发布于 2026-09-10T10:59:48.946799Z · thebuild.com 参数 安全 扩展

local_preload_libraries 在建立连接时把共享库加载进后端,与 session_preload_libraries 类似但更严:后者只有超级用户能设,前者任何角色都能设,代价是只许从 $libdir/plugins 加载。这个目录就是它全部的安全模型,PostgreSQL 从不往里放东西,得由管理员自己决定放什么。Christophe Pettus 建议 DBA 优先用 ALTER ROLE 配 session_preload_libraries。

阅读更多……

把事务性 API 的边界移进数据库

发布于 2026-09-10T10:59:48.87414Z · 个人博客 API 事务 架构

Alexey Evlampiev 主张校验、鉴权和状态迁移本来就该在一个事务里完成,事务性 API 的边界应当从应用层移进 PostgreSQL。他把带类型契约、鉴权策略、隔离级别声明和测试的具名数据库函数当作设计单元,HTTP 路由、OpenAPI 与 MCP 工具都只是这些操作的绑定。路由目录做成可查询的表,版本差异写成谓词而非分叉代码,鉴权交给行级安全。流媒体与编排仍留在外层。

阅读更多……