EXCLUSIVE? В документации не нашёл зацепку(
Ни в каком. Вот документацыя https://www.postgresql.org/docs/current/explicit-locking.html , ей можно верить.
Подскажите пожалуйста, почему может возникать такая блокировка при UPDATE, возможно я не правильно трактую инфу из pg_locks...
1) На будущее для меня — копируйте результаты текстом. 2) Они возникают потому, что так написан сервер. 3) Это "блокировки" virtualxid и transactionid к блокировкам таблиц и известной блокировке под названием EXCLUSIVE не имеют отношэния. 4) А чтобы понять, к чему имеют — надо читать исходный код сервера и комментарии, объясняющие как он работает.
Спасибо большое. Буду копать дальше.
Любая транзакция всегда удерживает исключительную блокировку собственного номера, виртуального и (если есть) обычного. Вот их вы тут и видите. Попробуйте почитать https://edu.postgrespro.ru/postgresql_internals-14.pdf, часть про блокировки.
Обсуждают сегодня