ITPub博客

首页 > 数据库 > PostgreSQL > PostgreSQL 日报|恢复预取器缺陷致检查点失败(10 月 28 日)

PostgreSQL 日报|恢复预取器缺陷致检查点失败(10 月 28 日)

原创 PostgreSQL 作者:IvorySQL 时间:2026-10-29 16:51:01 0 删除 编辑

PostgreSQL 技术文章

受监管行业的数据库现代化:安全、合规与运营韧性

Fujitsu 的这篇文章指出,数十年前构建的传统数据库缺乏现代监管机构所要求的审计追踪、数据驻留和访问控制能力。对于受监管行业而言,继续依赖未经现代化改造的系统,会持续拉大平台可证明的能力与合规框架实际要求之间的差距。文章将数据库现代化定位为风险管理的核心议题,尤其关注混合部署环境下的安全性、合规性和运营韧性,并将 PostgreSQL 作为满足上述需求的落地选择,逐一对比了社区 PostgreSQL、云厂商托管服务与企业发行版三条现代化路径在合规工程、审计日志、数据驻留与支持访问上的差异,并介绍了 Fujitsu Enterprise Postgres 在平台内直接提供的透明数据加密等合规能力。

原文链接:

https://pgnexus.ai/tech-blogs?url=https%3A%2F%2Fwww.postgresql.fastware.com%2Fblog%2Fdatabase-modernization-for-regulated-industries-security-compliance-and-operational-resilience

PostgreSQL Hacker 电子邮件讨论精选

recovery 预取机制的缺陷导致断言失败与检查点请求错误

在恢复预取器中发现一个 bug: FinishWalRecovery() 调用 XLogPrefetcherBeginRead() 时,预取器内部的记录指针并非 NULL,从而触发断言失败或 FATAL 级别的 checkpoint 错误。Tomas 提交了修复补丁,Surya Poondla 审查后认为修复方向正确,并核对了 XLogPrefetcherBeginRead() 的其他调用点——除 FinishWalRecovery() 外,其他调用点最多只读取并返回一条记录,此时 prefetcher->record 已为 NULL,与提交信息中的说明一致。他指出该问题在非断言构建下不易暴露,原因是 FinishWalRecovery() 丢弃了 ReadRecord() 的返回值:即使 emode 为 PANIC,只要没有 errormsg, ReadRecord() 也会静默返回 NULL,而 EndRecPtr 仍指向记录起点。因此他建议另开一个补丁,在重读最后一条重放记录后加上显式的 PANIC 检查,让类似问题今后能立即失败而非被掩盖。

原文链接:

https://pgnexus.ai/hacker-discussions?subject=A%20bug%20in%20recovery%20prefetcher%2C%20triggering%20asserts%20%2F%20FATAL%3A%20checkpoint%20request%20failed

[PG19] 后端被卡住的客户端阻塞导致晋升流程挂起

针对 PG19 中因后端进程阻塞于卡死客户端而导致 promotion 挂起的问题,相关补丁已完成审核并合入代码库。在最终的讨论中,Hayato Kuroda(Fujitsu)建议删除文档中对"valid (not invalidated) logical replication slot"的括号说明,理由是 protocol.sgml 中已有"valid replication slot"这一既有术语,括号内的补充解释并无必要。Amit Kapila 与 Masahiko Sawada 均认为该补丁没有问题,Sawada 随后将其推送合入主分支。

原文链接:

https://pgnexus.ai/hacker-discussions?subject=%5BPG19%5D%20Promotion%20hangs%20behind%20a%20backend%20blocked%20on%20a%20stuck%20client

[提案] 在 JOIN 中展开 OR 条件为 UNION ALL 路径

该讨论围绕一个将 join 中的 OR 子句展开为 UNION ALL 路径的 patch 提案展开。Zsolt Parragi 在审查中指出 v4 过于保守(会错误地拒绝 GROUP BY 等安全情况),且某些依赖 OR 短路求值的查询会出错。为此,Ayoub Kazar 发布了 v5,扩展了允许的 RTE 类型范围(RTE RELATION、非 FULL 的 RTEJOIN、非易变的 VALUES/FUNCTION/TABLEFUNC,以及 RTE GROUP、RTERESULT 等合成条目),并将每个 OR 展开臂包装进独立的合成 SubqueryScanPath(指向 RTE SUBQUERY),同时为每个臂分配独立的 PlannerInfo 与 planname,使 pg planadvice 能按臂限定关系标识符,不再生成相互冲突的 plan advice。随后 Zsolt 报告 v5 在开启断言的构建下会触发 list_length(dest_tlist) == list_length(src_tlist) 断言失败,Ayoub 通过在对齐后同步 subroot 的 targetlist 修复,并提交了修正版 v5 与 v6。

原文链接:

https://pgnexus.ai/hacker-discussions?subject=%5BPROPOSAL%5D%20Expand%20OR%20clauses%20in%20joins%20to%20UNION%20ALL%20paths

Parallel vacuum: 工作进程与主进程共同超支成本预算

该讨论涉及并行 vacuum 中各 worker 与 leader 合计超出代价预算的问题。针对 v2 补丁的基准测试表明,修复后吞吐量能保持在预算以内(8 个进程时约 97k/s,而 master 为 243k/s,预算上限为 100k/s)。Bharath Rupireddy 提议将睡眠时间上限设为 Min(vacuum_cost_delay * 4 * nworkers, 1000),即单次休眠最多 1 秒,因为更长的 pg_usleep() 会让进程无法及时响应 latch 与信号;他也认为在触发上限后短暂超出预算是可以接受的。关于是否回补到 14-18,他倾向只在 PG19 及以上修复,并为旧版本补一段文档说明,以免使用并行 vacuum 的用户在升级小版本后无意中变慢。

原文链接:

https://pgnexus.ai/hacker-discussions?subject=Parallel%20vacuum%3A%20workers%20together%20with%20leader%20could%20overrun%20cost%20budget

tablecmds: Attach Partition 导致的死锁问题

Surya Poondla 对修复 ALTER INDEX ... ATTACH PARTITION 死锁问题的 v5 补丁系列进行了审查。三个补丁可以干净地应用在 b936425002c(含 Álvaro 的 2ebd6849743)之上,所有相关 TAP 测试均通过。0001 与 v4 基本一致。针对 0002,Surya 在多层分区树结构下分析了锁行为(root > mid1 > mid2 > leaf1/leaf2):当 leaf2 idx 尚未附加、mid2idx 保持 invalid 时,master 不会锁定任何祖先,而 v5 会对 root、mid1 及其分区索引加 AccessExclusiveLock;当 leaf2 idx 已附加、验证一路级联到 rootidx 时,master 与 v5 的加锁完全一致,说明对真正会引发死锁的级联场景加锁顺序是正确的。代价是此后每次分区索引 ATTACH 都会对所有祖先索引及其表加 AccessExclusiveLock,即使本次 ATTACH 并不会触发验证——在完整索引层级下这意味着根表在 ATTACH 提交前无法读写,同一棵树上的并发索引 ATTACH 也会退化为串行执行。他理解更弱的预锁无法避免锁升级死锁、在回调中判断本次 ATTACH 是否会完成父级也不可靠,因此希望 Álvaro 就这一权衡明确表态。Shihao Zhong 随后补充, pg_get_partition_constraintdef()(psql \d+ 会用到)存在同样的死锁,可在 get_partition_qual_relid() 中先调用 lock_partition_ancestors() 修复。

原文链接:

https://pgnexus.ai/hacker-discussions?subject=tablecmds%3A%20Deadlock%20caused%20by%20Attach%20Partition

[DEPARSE] FROM 子句中的 AT TIME ZONE 等表达式无法正确反解析回源

一个修复 AT TIME ZONE 及类似构造在 FROM 子句中作为函数使用时无法正确反解析(deparse)问题的补丁分两部分提交。0001 新增了两列回归测试,展示修复前的输出;0002 则在更新其他内容的同时,同步更新了这两列的预期输出。Tom Lane 在做了少量文字润色后将其推入代码库。他决定不修改 looks_like_function() 的 API 约定:该函数的定义就是判断构造是否会按 func_expr_windowless 解析,这本身就是它应尽的职责;他认为由此产生多余括号的情况并不常见(回归测试中似乎一例都没有),不值得为此把接口复杂化。

原文链接:

https://pgnexus.ai/hacker-discussions?subject=%5BDEPARSE%5D%20AT%20TIME%20ZONE%20and%20similar%20as%20a%20function%20in%20FROM%20do%20not%20read%20back

行业新闻

Disruptive 募集 100 亿美元基金,押注 AI 芯片初创企业

Disruptive 宣布完成一支规模达 100 亿美元的新基金,计划重点押注至少 10 家公司。该机构此前因投资芯片初创公司 Groq 和 AI 语音生成公司 ElevenLabs 而备受关注。此次巨额募资表明 Disruptive 持续看好 AI 基础设施及应用领域的长期价值,也彰显其在新一轮科技投资浪潮中的重要地位。

原文链接:

https://pgnexus.ai/tech-news?url=https%3A%2F%2Ftechcrunch.com%2F2026%2F10%2F27%2Fdisruptive-raises-10b-fund-to-make-big-bets-on-at-least-10-companies

Re:Build Manufacturing 完成 21 亿美元融资,Slate Auto 独立分拆后获资

制造业加速器 Re:Build 完成 21 亿美元融资。该公司此前曾孵化并剥离电动汽车初创企业 Slate Auto,自称是"美国版深圳",致力于重建本土制造业能力。此轮融资反映出投资者对美国制造业回流的持续关注,尤其在供应链安全与地缘政治压力加剧的背景下,相关资本布局正明显提速。

原文链接:

https://pgnexus.ai/tech-news?url=https%3A%2F%2Ftechcrunch.com%2F2026%2F10%2F27%2Frebuild-which-spun-out-slate-auto-raises-2-1b

Meta AI 总监 Rohit Patel 离职创办 Microsoft Office 和 Google Workspace 竞品

据 TechCrunch 独 家报道,在 Meta 工作八年的 AI 总监 Rohit Patel 即将离职,创办名为 Ndoc 的初创公司,剑指 Microsoft Office 和 Google Workspace 等主流生产力软件市场。Patel 在 Meta 期间专注于 AI 评估与强化学习领域。他的离开,折射出当前科技行业高级 AI 人才加速出走、Meta 内部高层持续流失的趋势——此前首席全球事务官 Joel Kaplan、AI 研究员 Andrew Tulloch 与 AI-for-Work 产品负责人 Emily Dalton Smith 均已相继离职。Ndoc 试图用一个统一工作区取代 Excel、Word、PowerPoint、Tableau、Replit 与"ChatGPT 复制粘贴"之间的碎片化协作,包含呈现关键结论的 Stage、解释分析依据的 Narrative 以及存放数据集与 Python 脚本的 Model 三个页签;Patel 强调用户可以直接查看并追问生成文档所用的脚本,做到"幕后无所隐藏"。

原文链接:

https://pgnexus.ai/tech-news?url=https%3A%2F%2Ftechcrunch.com%2F2026%2F10%2F27%2Fmeta-ai-director-rohit-patel-leaves-to-take-on-microsoft-office-and-google-workspace

社交媒体动态

向 Postgres 导入数十亿行数据,不应拖慢线上应用

Lakebase 的 LTAP 架构解决了大规模数据导入与线上 OLTP 业务相互竞争资源的问题。它将批量数据加载任务卸载到独立计算节点上的 Spark 中执行,使主数据库实例不受大批量导入的性能影响。团队无需为了应对数据导入而过度扩容主实例,即可将数十亿行数据加载到 Lakebase 中。

原文链接:

https://pgnexus.ai/social-media?url=https%3A%2F%2F%2Fposts%2Fdatabricks_loading-billions-of-rows-into-postgres-shouldnt-activity-7520916512207974400-1p5o

企业 AI 的瓶颈不在于智能本身

Databricks 联合创始人兼 CEO Ali Ghodsi 认为,企业 AI 面临的核心挑战不是智能能力不足,而是缺乏上下文。AI 智能体只有真正理解业务的运作方式,才能完成可信赖的工作。然而,大量业务知识目前仍停留在员工脑中,并未沉淀到结构化系统里。只要这些知识没有被纳入受治理的数据记录系统,智能体就只能靠猜测行事。a16z 的 Ben Horowitz 和 Michael McGuiness 进一步探讨了这一记录系统为何如此关键,以及 Databricks 为何处于有利位置来支撑它。

原文链接:

https://pgnexus.ai/social-media?url=https%3A%2F%2F%2Fposts%2Fdatabricks_the-bottleneck-for-enterprise-ai-isnt-intelligence-activity-7520848417871339520-C42c

GPT-6.1 Terra 现已在 Databricks 上正式推出

GPT-6.1 Terra 现已在 Databricks 平台上线。根据 OfficeQA Pro v2 基准测试,该模型在质量上有显著提升,并处于质量与成本的帕累托最优边界。用户可结合平台内 70 余款其他模型,直接基于 Lakehouse 中的现有数据构建受治理的 AI 应用与智能体。Unity Gateway 通过统一控制平面,对每次模型调用实施集中治理、监控与安全管控。

原文链接:

https://pgnexus.ai/social-media?url=https%3A%2F%2F%2Fposts%2Fdatabricks_now-available-on-databricks-gpt-61-terra-activity-7520649472490741760-jAiW

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70043484/viewspace-3187083/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: 没有了~
请登录后发表评论 登录
全部评论
IvorySQL 是瀚高公司主导研发的一款兼容 Oracle 的开源 PostgreSQL 数据库。

注册时间:2025-02-06

  • 博文量
    494
  • 访问量
    468848