Книга: Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ

Версии записей

Версии записей

Когда запрос на изменение успешно отправлен на сервер, Firebird создает и записывает на диск ссылку, связывающую оригинальный образ строки, видимый в транзакции - иногда это называется дельтой, - с новой версией строки, содержащей изменения запроса. Оригинальный и новый образы строки называются версиями записи. Когда новая версия записи создается в транзакции более новой, чем транзакция, которая создала "живую" версию, другие транзакции не будут иметь возможности изменять или удалять оригинал, если только транзакция, создавшая новую версию, не выполнит откат. Процесс создания версий подробно описан в главе 25.

Пока транзакция, в конце концов, не подтвердит изменения, она не касается "живой" версии. В своем собственном контексте она трактует отправленную версию, как если бы она была самой последней подтвержденной версией. Тем временем другие транзакции продолжают "видеть" самую последнюю подтвержденную версию. В случае "мгновенного снимка" базы данных (snapshot) в транзакциях, которые были запущены до нашей транзакции, последняя подтвержденная версия записи, которую они видят, может быть более старой, чем та, которую видит наша транзакция и другие транзакции, либо ранее запущенные, либо имеющие уровень изоляции READ COMMITTED.

Оглавление книги


Генерация: 0.769. Запросов К БД/Cache: 3 / 0
поделиться
Вверх Вниз