
OOM killer 杀掉正在改共享内存的后端进程时,共享内存可能停在不一致状态,有损坏已存数据的风险;postmaster 随即终止所有后端,重启还要跑崩溃恢复。Ubicloud 的 Burak Yucesoy 说明他们把 vm.overcommit_memory 设为 2,用分配阶段的 ENOMEM 换掉这种又晚又暴烈的失败,vm.overcommit_kbytes 取总内存的 80% 加 2GB。代价是机器混跑别的负载时,数据库也会被牵连着拿到 ENOMEM。
OOM killer 杀掉正在改共享内存的后端进程时,共享内存可能停在不一致状态,有损坏已存数据的风险;postmaster 随即终止所有后端,重启还要跑崩溃恢复。Ubicloud 的 Burak Yucesoy 说明他们把 vm.overcommit_memory 设为 2,用分配阶段的 ENOMEM 换掉这种又晚又暴烈的失败,vm.overcommit_kbytes 取总内存的 80% 加 2GB。代价是机器混跑别的负载时,数据库也会被牵连着拿到 ENOMEM。
来源记录
- center.info_item · 0d29479f5ada7954 · 2026-10-03T04:08:35.169032Z
- pgweb.info_item · 0d29479f5ada7954 · 2026-10-03T04:08:55.967155Z