DBAtlas · Atlas für Datenbankbetrieb

Aktive und blockierende Abfragen anzeigen

PostgreSQLSessions

Befehl

SELECT pid, usename, state, wait_event_type, wait_event, pg_blocking_pids(pid) AS blocking_pids, now() - query_start AS duration, left(query, 100) AS query FROM pg_stat_activity WHERE state <> 'idle' AND pid <> pg_backend_pid() ORDER BY duration DESC;

Was es tut

Listet alle aktiven (nicht idle) Backends, welche PIDs sie blockieren und wie lange sie schon laufen.

Wann einsetzen

Um Sperr-/Blockierungsprobleme und lang laufende Abfragen zu diagnostizieren.

Vorsicht

pg_blocking_pids gibt es ab PostgreSQL 9.6. Ist das Array blocking_pids nicht leer, halten diese PIDs die Sperre; brich diese PID bei Bedarf ab bzw. beende sie.

In DBAtlas öffnen →

Verwandte Einträge