Можно ли убить одну из активных сессий в PostgreSQL? Как это сделать?

Да: pg_cancel_backend отменяет текущий запрос, а pg_terminate_backend завершает сессию при наличии нужных прав.

Короткий ответ

Что ответить на собеседовании

Да: pg_cancel_backend отменяет текущий запрос, а pg_terminate_backend завершает сессию при наличии нужных прав.

Подробный разбор

Ответ с пояснениями

Да: pg_cancel_backend отменяет текущий запрос, а pg_terminate_backend завершает сессию при наличии нужных прав.

Сначала найдите PID и владельца в pg_stat_activity и оцените транзакцию. Передавайте только проверенный PID; завершение соединения откатывает незавершённую транзакцию и может повлиять на приложение. Для обычного долгого запроса сначала разумно рассмотреть отмену, а не разрыв всех соединений.

Источник: www.postgresql.org.

ИИ-помощник для собеседований

Хочешь уверенно проходить собеседования?

Попробуй ИИ-помощник для собеседований: слышит вас и собеседника, анализирует экран, подсказывает ответы в реальном времени, работает без VPN и не попадает в захват экрана.

Подробнее