#Собес #deadlock #postgresql #transaction
🤔 Как СУБД (например, PostgreSQL) обрабатывает взаимоблокировки?
💬 Кратко:
PostgreSQL автоматически обнаруживает взаимоблокировки с помощью графа ожидания блокировок. Когда обнаруживается цикл в этом графе (что указывает на deadlock), СУБД выбирает одну транзакцию в качестве "жертвы" и откатывает ее, освобождая заблокированные ресурсы. Выбранная транзакция получает ошибку, а остальные могут продолжить выполнение. Критерий выбора "жертвы" обычно основан на стоимости отката — отменяется транзакция с наименьшей стоимостью отката.
📌 Полный разбор + примеры использования — на платформе:
👉 Перейти к разбору
📣 Все для прокачки навыков:
✅ Анонсы → канал
✅ Комьюнити → чат
✅ База задач и вопросов → платформа
Post #629
101