Runbook: WALFsyncSlow
Source of truth:
tools/observability/alerts/angarabase_alerts.yaml. Backed by: RM-0.6.3.8 S7.
Что означает
P99 fsync latency для WAL превышает 50 ms на протяжении 5 минут. Каждый commit ждёт диска дольше, чем целевой бюджет — TPS падает, commit latency растёт, риск каскадного backlog.
Severity
warning. При 200 ms+ — близко к critical (рассмотреть эскалацию).
Initial response
- Grafana Overview v2 → row “WAL & Durability”.
- Проверить, не выросла ли WAL throughput rate (bytes/s) — переполнение write buffer.
iostat -xm 1 5на хосте — насыщен ли диск под WAL.
Diagnostics
curl -sf http://127.0.0.1:9898/metrics | rg transaction_log
iostat -xm 1 5
dmesg | tail -50 # ошибки I/O / SMART warnings
Mitigation
| Причина | Действие |
|---|---|
| Disk насыщен | Перенести WAL на отдельный диск; SSD/NVMe вместо HDD |
| Group commit off | Включить wal.group_commit = true в config |
| Network FS | НЕ используйте NFS / CIFS для wal/ — fsync семантика непредсказуема |
Большой wal_buffer_bytes | Уменьшить до разумного (16–64 MB) |
| Filesystem barriers off | Проверить mount options (barrier=1, data=ordered) |
Escalation
Если fsync > 200 ms сохраняется > 10 минут — это путь к coordinated omission и потере commit; собрать diagnostics bundle, эскалировать срочно (durability-критично).