Введение в системы управления базами данных


Пример 15



Пример 15


Транзакция A Время Транзакция B Сумма на счетах посчитана правильно.
Проверка SCN счета
- SCN транзакции больше SCN счета.
Чтение счета
без наложения блокировки и суммирование.
---
---
X-блокировка счета
- успешна
---
Снятие денег со счета
.
---
X-блокировка счета
- успешна
---
Помещение денег на счет
.
---
Фиксация транзакции
(Снятие блокировок)
Проверка SCN счета
- SCN транзакции больше SCN счета.
Чтение счета
без наложения блокировка и суммирование.
---
Проверка SCN счета
- SCN транзакции МЕНЬШЕ SCN счета.
Чтение старого варианта счета
и суммирование.
---
Фиксация транзакции
---
 

Результат. Транзакция A, начавшаяся первой не тормозит конкурирующую транзакцию B. При обнаружении конфликта (чтение транзакцией A измененного счета 3), транзакции A предоставляется своя версия данных, которая была на момент начала транзакции A.









Начало  Назад  Вперед



Книжный магазин