选择 打开 改范围 完整检索页

pgsql.cc 提供对 postgresql.org 官网内容的中文翻译,由 Pigsty 团队维护。

PostgreSQL 博览 RSS 订阅

当天收录 23 条。

数据校验和可在运行中的集群里开关

Daniel Gustafssonpgsql-hackers 邮件列表

数据校验和过去只在 initdb 时决定,事后要改就得停下实例跑 pg_checksums 或者重建。Daniel Gustafsson 在收到 Ayush Tiwari 的评审意见后,提交了在运行中的集群里启用或禁用数据校验和的补丁集,落地前又做了一轮编辑性修改。这意味着管理员不必完全停机或重建数据目录,就能给已有集群打开校验和,对排查静默数据损坏是一项实打实的运维改进。补丁进的是主干,现有版本仍需沿用离线流程。

procsignal barrier 竞态会让启动阶段死锁

Masahiko Sawadapgsql-hackers 邮件列表

Masahiko Sawada 确认 procsignal barrier 存在竞态:一个进程发出屏障信号时,另一个进程正处在槽位代号与 pid 初始化之间,等待函数便无限期等下去,表现为启动阶段死锁。Alexander Lakhin 用插入睡眠的补丁复现了这一场景。问题从 v15 一直存在到 master,只是早前版本用到屏障的地方少、命中概率低,去年 12 月扩大屏障用途的提交让报告多了起来。建议把修复回迁到 v15。

逻辑复制支持 DDL 的两条路线再起争论

Amit Kapilapgsql-hackers 邮件列表

逻辑复制自动同步 DDL 的路线又吵了一轮,焦点是两条:现有的 JSON deparsing 把解析节点转成 JSON,再在订阅端还原;另一条从系统表变更反向重构语句。Amit Kapila 主张沿用前者,因为过滤和模式映射更灵活。Masahiko Sawada 担心维护成本,也不满它对输出插件不够中立。Andres Freund 指出反向重构会丢掉 ALTER COLUMN 的 USING 子句这类语义信息。事件触发器管理仍无定论。

pgagroal 2.1.0 补上健康检查与故障切换脚本

pgagroal 项目Luca Ferrari 博客

连接池 pgagroal 发布 2.1.0,补齐监控与高可用。新增查看 Prometheus 指标的 Web 控制台;故障切换后可执行脚本,用来通知其余备库;新增健康检查工作进程定期查询主备,pgagroal-cli ping 随之显示各服务器健康状态;启动时校验备库与主库版本是否一致。配置侧新增 pgagroal-config 命令,可交互生成配置,也可脚本化修改。测试套件亦重构并扩大覆盖。

pgBackRest 停止维护之后的备份路线选择

Christophe Pettusthebuild.com

pgBackRest 停止维护,Christophe Pettus 给出一份替代品对照。他先说明没有能直接顶替的工具:其价值在并行备份恢复、块级增量、delta restore、异步 WAL 归档和多存储后端这一整组能力上。替代路径有四条:有独立备份主机的机房用 Barman,跑 S3 兼容存储的用 WAL-G,单个小集群可用 pg_basebackup 加脚本,云上则用 barman-cloud。他强调不必着急,先并行验证再迁移。

pgvectorscale 让向量索引落盘并支持混合检索

Christophe Pettusthebuild.com

Christophe Pettus 实测 Tiger Data 的 pgvectorscale,并给出不靠 Elasticsearch 的混合检索写法。其核心是 StreamingDiskANN 索引:完整向量留在 SSD 上,内存只放压缩向量用于遍历估距,配合每维一到两位的统计二值量化,绕开 HNSW 必须常驻内存的限制;标签过滤在遍历中生效。他在 100 万条 1536 维向量上测得 p95 延迟约为 HNSW 的九分之一。

Percona 给出逻辑复制延迟的系统排查方法

Jobin AugustinePercona 博客

Percona 的 Jobin Augustine 把逻辑复制延迟的排查整理成一套依赖等待事件和统计信息的流程。文章拿积压 4.5TB 的真实案例做示范,说明 WalSenderWriteData 等待事件如何指向两端之间的网络问题。他把延迟归为三类:订阅端应用得慢、网络饱和、大事务突发。判断方法是把两端等待事件形态、LSN 差值和日志对照着看,据此区分瓶颈在发送端、订阅端还是链路本身。