journalctl -k --utc \
--since '2026-10-12 03:58:30 UTC' \
--until '2026-10-12 04:00:00 UTC' --no-pager
journalctl -u postgresql@16-main --utc \
--since '2026-10-12 03:58:30 UTC' \
--until '2026-10-12 04:05:00 UTC' --no-pager
systemctl show postgresql@16-main \
-p OOMPolicy -p Restart -p Result -p MemoryMax -p ControlGroup
Предыстория:
Превышение MemoryMax PostgreSQL
→ cgroup OOM убивает backend
→ PostgreSQL начинает собственное восстановление
→ systemd с OOMPolicy=stop запускает остановку службы
→ pg_ctlcluster -m fast посылает запрос fast shutdown
→ восстановление пересекается с остановкой
→ БД отклоняет подключения как shutting down и стоит колом в ожидании RECOVERY