|
После commit транзакция уже не может откатиться в случае например, crash recovery?
|
|||
---|---|---|---|
#18+
Если делаем следующее: 1) Отрабатывает последовательность больших по объему и длительных по времени транзакций (из скриптов), в конце каждой выполняется commit явно или неявно, скрипты рапортуют об успешном завершении. 2) Возникает необходимость остановить сервер DB2. Делаем db2stop force, останавливается очень долго. Наверно, буфера сбрасываются? Не дожидаемся остановки, делаем sync; reboot . 3) После ребута DB2 стартует и при активации базы ессно начинается crash recovery, который проходит успешно но очень долго - около получаса. Вопрос: могла ли транзакция из пункта 1) откатиться во время crash recovery? С моей точки зрения нет, потому что она закоммитилась как минимум в активный лог, соответственно во время crash recovery все недописанные из буферов данные повторно прокатываются из активного лога? ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2016, 09:53 |
|
После commit транзакция уже не может откатиться в случае например, crash recovery?
|
|||
---|---|---|---|
#18+
dbtwoshnick, Неявный commit - это выполнение скрипта при включенном автокоммите? При деактивации базы откатываются незавершенные транзакции, сбрасываются на диск грязные страницы, архивируются логи. Если все логи на месте и не повреждены, то все завершенные транзакции должны восстановиться. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.12.2016, 10:48 |
|
|
start [/forum/topic.php?fid=43&fpage=11&tid=1600498]: |
0ms |
get settings: |
8ms |
get forum list: |
9ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
33ms |
get topic data: |
9ms |
get forum data: |
2ms |
get page messages: |
30ms |
get tp. blocked users: |
1ms |
others: | 296ms |
total: | 394ms |
0 / 0 |