DBAtlas · Атлас эксплуатации баз данных

Показать активные и блокирующие запросы

PostgreSQLСессии

Команда

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;

Что делает

Выводит все не простаивающие backend, PID, которые их блокируют, и длительность их выполнения.

Когда использовать

Для диагностики проблем с блокировками и долгих запросов.

Внимание

pg_blocking_pids доступна в PostgreSQL 9.6+. Если массив blocking_pids не пуст, эти PID удерживают блокировку; при необходимости отмените/завершите этот PID.

Открыть в DBAtlas →

Связанные материалы