Мне было интересно, может ли кто-нибудь проверить мое понимание различий между этими тремя терминами в отношении баз данных Oracle.
Многие источники путают эти термины и не объясняют их в деталях, поэтому было сложно найти информацию.
Из того, что я собираю:
- Коммит и быстрый коммит - это одно и то же, все коммиты - это быстрые коммиты.
- Быстрое принятие, по существу, только обновляет флаг в таблице транзакций заголовка сегмента отмены / отката, чтобы указать, что транзакция зафиксирована. Однако фактический блок не пересматривается, что означает, что байтовый адрес отмены (UBA) в списке заинтересованных транзакций (ITL), который находится в заголовке блока данных, все еще указывает на таблицу транзакций соответствующего сегмента отмены. Кроме того, байты блокировки соответствующих строк не освобождаются, и количество блокировок в ITL не изменяется (строки все еще заблокированы).
- В коммите СКА, блок будет вновь и ITL обновляются с фиксацией SCN. Однако счетчик блокировок в ITL и байт блокировки, сохраняемый с каждой строкой, все еще не обновляются (строка по-прежнему блокируется, как при быстрой фиксации), это не приводит к повторному выполнению, даже если блок изменяется.
- Блоки, которые были зафиксированы нормально (== быстрое принятие), будут подвергаться отложенной очистке блока при следующем касании (и генерировать повтор).
- Блоки, прошедшие очистку при фиксации, будут подвергаться отложенной очистке блока регистрации при следующем касании (и генерировать повтор).
Надеюсь, кто-то может проверить эти пункты! Благодарность!