↑↓ 选择 ↵ 打开 ⌫ 改范围 完整检索页

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

PostgreSQL 博览 RSS 订阅

当天收录 26 条。

PostgreSQL 主线撤回外键检查批处理

Amit LangotePostgreSQL Git

PostgreSQL 开发主线已提交外键快速路径批处理层的回退。此前 PostgreSQL 19 分支已移除这层优化,主线曾保留它继续修正;新的触发器语义问题促使开发者放弃当前实现。当行后触发器修改被引用表时,延后成批校验可能偏离逐行检查的行为。此次删除缓存外键行与集中探测的机制,但保留绕过 SPI、直接访问主键索引的逐行快速路径。变化发生在开发树,相关测试应按新的执行边界重新核对。

直接 I/O 备份兼顾页缓存保护与吞吐

Kaushik IskaClickHouse

大规模物理备份会顺序读遍数据库,挤出操作系统中仍有价值的热数据。ClickHouse 团队介绍其托管 Postgres 对 WAL-G 的调优:使用直接 I/O 绕过页缓存,再把单次读取扩大到覆盖 RAID0 条带,弥补失去内核预读后的吞吐下降。厂商测试中,直接 I/O 保住了预热表的缓存,而默认缓冲读取几乎将其清空。文章同时比较读取并发、查询尾延迟和 CPU 开销,说明备份速度与在线负载保护需要一起衡量。

并行扫描阈值也决定工作进程数量

Christophe PettusPGX

PostgreSQL 的并行扫描最小尺寸参数既控制是否考虑并行,也影响分配多少工作进程。Christophe Pettus 通过计划与实验说明,规划器从该阈值出发,按扫描规模逐级增加进程;把阈值设为零,可能让很小的查询也申请过多进程。索引扫描、仅索引扫描与位图扫描采用的尺寸依据各不相同,表级设置又能覆盖默认估算。参数还影响并行建索引与清理的适用边界,因此调优时应同时检查计划代价、数据规模和实际并发。

多租户分片遇到热点时应先检查分片键

Simeon GriggsPlanetScale

多租户系统按租户均匀分配,并不意味着每个分片的负载均衡:少数大租户可能占据大部分数据和请求。PlanetScale 以 Neki 为背景分析处理路径,从单独扩容热分片,到隔离大租户,再到按具体表的访问模式更换分片键。文章用消息表从工作区改按频道分片说明,拆分必须保留常用查询的局部性;迁移则需要先复制数据、持续追赶变更,最后切换路由。这些取舍把容量规划与数据模型联系起来,不能仅靠增加分片数量解决。

ClusterSync 为 MongoDB 迁移增加主备接管

Inel PandzicPercona

长时间运行的数据迁移需要在同步进程故障后继续追赶。Percona ClusterSync for MongoDB 1.0.0 引入主备模式,通过目标库中的租约选出活跃实例,并用递增任期阻止失去租约的旧进程继续写入检查点。备用实例可从已保存的位置接管持续复制,租约使用服务端时间判断过期,降低节点时钟差异的影响。当前初始克隆仍不能断点恢复,失败后须重新开始;旧版状态也不能直接沿用,升级与演练应分别验证这两个阶段。

Caddy 2.11.7 修复超时策略引入的回归

Caddy 项目组Caddy Releases

Caddy 2.11.7 修复了 2.11.6 超时调整带来的多种代理回归。此前新增的请求体读取期限可能截断持续发送的请求;HTTP/2 写入空闲计时也可能误伤暂时没有数据的长连接。另一个问题是期限回调晚于处理器结束,导致反向代理发生空指针崩溃。新版本调整这些期限的作用范围,并继续完善流式响应处理。近期升级过的服务应重点回归长时间上传、事件流和安静一段时间后恢复发送的连接,确认安全超时与正常业务兼容。