PostgreSQL Slowdown and High Disk Read Triage
Separates slow queries, lock waits, disk reads and temp-file spills to guide the right response.
Operational Safety & Risk Notice
This runbook contains operational intervention steps; several are write-impacting (KILL, terminate, DROP, RESIZE). Verify in a staging environment first, and apply sequentially in production with verification.
1. Symptom & Signals
- Uygulama p95/p99 sorgu gecikmesi ve disk okuma süresi yükselir; M2 (buffer cache hit oranı) alışılmış seviyesinin altına iner.
- `pg_stat_activity` içinde uzun süren aktif oturumlar veya I/O beklemeleri artar.
2. Business & Technical Impact
İstek zaman aşımı, bağlantı havuzunda birikme ve diğer sorgularda ikincil gecikme oluşabilir. Düşük cache hit oranı tek başına arıza kanıtı değildir.
3. Diagnosis & Root-Cause Analysis
SELECT wait_event_type, wait_event, state, count(*) AS sessions
FROM pg_stat_activity
WHERE backend_type = 'client backend'
GROUP BY 1,2,3 ORDER BY sessions DESC;
SELECT pid, datname, usename, now() - query_start AS query_age,
wait_event_type, wait_event, left(query, 200) AS query
FROM pg_stat_activity
WHERE state = 'active' AND pid <> pg_backend_pid()
ORDER BY query_start NULLS LAST LIMIT 20;SELECT calls, round(total_exec_time::numeric, 1) AS total_ms,
round(mean_exec_time::numeric, 1) AS mean_ms,
shared_blks_read, temp_blks_written, left(query, 160) AS query
FROM pg_stat_statements
ORDER BY total_exec_time DESC LIMIT 15;4. Remediation & Action Plan
SELECT pg_cancel_backend(12345); -- PID'i teşhis sorgusundan doğrulayınANALYZE public.hedef_tablo;5. Verification & Health Checks
- Uygulama p95/p99 ve disk latency baz seviyesine döndü; M2 eğilimi stabil. Aktif kuyruk ve temp dosya artışı durdu.
- Müdahale sonrası en az 15 dakika aynı sorgunun tekrar birikmediğini doğrulayın.
6. Rollback & Contingency Plan
- İptal edilmiş sorgu otomatik geri gelmez; uygulama yeniden denemeli. `ANALYZE` istatistikleri değiştirir, eski istatistiklere güvenli genel bir geri alma yoktur; plan regresyonunda DBA incelemesi yapın.
- Dağıtım geri alması uygulama prosedürüne göre gerçekleştirilir.