Рассмотрим ситуацию, показанную на рис. 11.1. Предполагается, что этот рисунок читается следующим образом: транзакция А осуществляет выборку некоторой записи R в момент времени t1.
| Транзакция А | Время | Транзакция В | ||
| — | — | |||
| — | — | |||
| FETCH R | t1 | — | ||
| — | — | |||
| — | t2 | FETCH R | ||
| — | — | |||
| UPDATE R | t3 | — | ||
| — | — | |||
| — | t4 | UPDATE R | ||
| — | — | |||
Рис. 11.1. Транзакция А утрачивает обновление в момент t4
Транзакция В осуществляет выборку той же самой записи R в момент времени t2. Транзакция А обновляет эту запись в момент t3 исходя из значений, «увиденных» в момент времени t1, а транзакция В обновляет ту же запись в момент времени t4, исходя из значений, «увиденных» в момент t2, являющихся теми же самыми, что и значения, «увиденные» в момент t1. Обновление, осуществляемое транзакцией А, утрачивается в момент t4, поскольку транзакция В перекрывает его своим обновлением, даже на него «не глядя».






