четверг, 1 декабря 2011 г.

Зависшие Prepared Transaction в Postgres

Если в базе postgres не удаляется таблица (на запрос drop database сервер выдает ошибку database  is being accessed by other users, хотя ни кто базу не использует)   или в этой таблице невозможно изменить данные и перезагрузка сервера тоже не помогает, то следует обратить внимание на зависшие распределенные транзакции.

Выполняем запрос

select * from pg_prepared_xacts

Копируем значение поля gid.
Теперь выполняем запрос

ROLLBACK PREPARED 'gid'

где за место gid подставляем скопированное значение.

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

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