Продвинутый
Что такое Deadlock (Взаимоблокировка) в БД?
Deadlock — это ситуация, когда две транзакции бесконечно ждут друг друга, чтобы освободить заблокированные ресурсы.
Пример:
1. Транзакция А блокирует Таблицу 1.
2. Транзакция Б блокирует Таблицу 2.
3. Транзакция А пытается обновить Таблицу 2 (ждет Б).
4. Транзакция Б пытается обновить Таблицу 1 (ждет А).
✅ Как решает БД: СУБД (например, PostgreSQL) обнаруживает дедлок по таймауту, принудительно "убивает" одну из транзакций (откатывает ее) и выдает ошибку, позволяя второй завершиться.