Субд лекции

Темы:

Контрольные точки

Модификация модели плоских транзакций, сохраняющая свойство атомарности, но снижающая потребность в повторном выполнении действий, основывается на понятии контрольных точек.

Контрольные точки устанавливаются в прикладной программе для того, чтобы отметить моменты, начиная с которых можно продолжить вычисления в случае возникновения проблем.

По достижении очередной контрольной точки в транзакции создается новое атомарное действие, которое запускается на выполнение. Только последнее атомарное действие всей последовательности может выполнить фиксацию (COMMIT WORK) транзакции; оператор COMMIT WORK передается всем предыдущим атомарным действиям, пока все они не будут зафиксированы. Контрольная точка не приводит к необратимой фиксации выполненной до этого момента работы.

Откаты (ROLL BACK) транзакции могут инициироваться из любого атомарного действия, а не только из последнего, хотя в любой заданный момент времени прерывание может инициировать только действие, запущенное последним. Это значит, что если для какого-то атомарного действия была достигнута контрольная точка, то для этого действия уже не может быть в дальнейшем принято решение об откате. Откат может быть проведен до любой из предыдущих контрольных точек, поэтому менеджер обработки транзакций должен воспринимать параметр, указывающий, до какой именно контрольной точки нужно провести откат.

предыдущаяследующая