четверг, 14 февраля 2013 г.

Отмена запроса PostgreSQL

Если программа вызовит долговыполняющийся запрос к PostgreSQL, то даже её закрытие не прекратит выполнение этого запроса. Особенно это актуально для REINDEX или FULL VACUUM, которые кроме того что долго выполняются, еще и блокируют таблицу.
Для отметы такого запроса, нужно вызвать другой запрос:
SELECT pg_cancel_backend(procpid) as x 
FROM pg_stat_activity 
WHERE current_query like 'REINDEX%';

Комментариев нет:

Отправить комментарий