别为不会发生的崩溃缩短 checkpoint_timeout
把 checkpoint_timeout 调到一到五分钟,通常是为了缩短崩溃恢复时间。Lætitia Avrot 说这条推理站不住:恢复时长取决于要重放的 WAL 量,而不是这个参数本身;间隔越短,越多页面在检查点后首次修改时触发全页写,形成写放大。她建议多数负载放在 15 到 30 分钟,由 max_wal_size 按实际写入量触发检查点,可用性交给副本。调参之前先打开 log_checkpoints 看清现状。
pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。
当天收录 23 条。
把 checkpoint_timeout 调到一到五分钟,通常是为了缩短崩溃恢复时间。Lætitia Avrot 说这条推理站不住:恢复时长取决于要重放的 WAL 量,而不是这个参数本身;间隔越短,越多页面在检查点后首次修改时触发全页写,形成写放大。她建议多数负载放在 15 到 30 分钟,由 max_wal_size 按实际写入量触发检查点,可用性交给副本。调参之前先打开 log_checkpoints 看清现状。
DBOS 的 Qian Li 与 Peter Kraft 说明了 Postgres 队列的扩展办法:上千个 worker 轮询同一张队列表会造成锁竞争和索引抖动,未优化时吞吐只有每秒百来个任务。三项改动是:出队用 FOR UPDATE SKIP LOCKED 各取各行,事务从 REPEATABLE READ 降为 READ COMMITTED 消除序列化失败,索引只覆盖 ENQUEUED 状态。厂商称优化后达到每秒 3 万次工作流执行。
WAL-G 用 Go 写成,垃圾回收让备份与 WAL 归档的内存占用难以预测。ClickHouse 发布开源的 WAL-RUS,用 Rust 重写同一套能力,沿用 WAL-G 的配置变量,两边归档可以互读,是并行选项而非替代品。厂商测试称虚拟内存从 2.8 GB 降到 1 GB 以内,吞吐与 CPU 占用相当。ClickHouse Cloud 的托管 Postgres 将用它做默认的备份与归档机制。
Tianzhou 指出根源:PostgreSQL 用不可变的 attnum 同时表示列的身份、物理位置和显示顺序,pg_attribute 的编号顺序分配、永不复用,删列留下空洞,重排会牵动引用它的索引与约束。列顺序不只是美观,按对齐宽度排列最多省两成表体积,眼下只能用 CREATE TABLE AS SELECT 重建表。MySQL 的 InnoDB 自 8.0.29 起分开逻辑与物理顺序,社区同类提案至今未落地。
AWS 开源博客称,为 MySQL 建立开放治理是社区向前的一步,AWS、Oracle 和 Google Cloud 将共同参与新的 steering committee。The Register 的报道强调,社区想要的是具体保证而不是意向:路线图决定权、兼容性承诺和认证规则怎么落到文档上,目前都没有答案。治理变化不像版本发布那样显眼,但对兼容性和下游发行版影响更久。维护 MySQL 与 PostgreSQL 双栈的团队值得跟进。
Kubernetes 的工作负载安全策略长期受制于可用性与默认配置,seccomp 与 AppArmor 的 profile 多半靠各家自己拼装。CNCF 宣布 Security Profiles Operator 发布 v1,API 进入稳定阶段,项目做了安全加固,部分设计反馈回上游。稳定的 API 意味着更多生产集群可以把安全 profile 写成可重复的配置对象,而不是一次性手工操作,也便于纳入 CI/CD 验证。
Andrey Borodin 确认 v3 补丁可干净应用于 REL_18_STABLE,新增测试在修复前失败、修复后通过。
元组相关列改用 json 保留原始表示,新增 replica_identity_full 布尔列区分全元组与基于索引的复制标识。
ChangAo Chen 的 v5 补丁拿到 LGTM;pg_repack 里同类的未加锁 aclcheck 问题另开线程处理。
The Register 称攻击瞄准开发者本机与 CI 环境里的 token,lockfile、镜像源和最小权限仍是主要防线。
第三部分聚焦 token 权限、OIDC、构建产物来源证明与审批回滚,可用来自查文档与包的发布流水线。
容器运行时漏洞往往影响宿主隔离边界,需按官方 advisory 核对版本、暴露接口与权限模型。