다음은 시스템 고장이 발생할 때 트랜잭션 T1, T2, T3, T4, T5를 복구하기 위해 고장 전에 마지막으로 기록된 DBMS 로그이다. 이 로그를 사용하여 즉시 갱신 회복 기법의 undo-redo 알고리즘을 수행할 때, 회복과정에 대한 설명으로 옳지 않은 것은? (단, <checkpoint>는 검사점 기록 로그 레코드이며, <T1, A, 200, 400>은 ‘T1이 데이터 항목 A의 현재 값 200을 400으로 갱신한다’를 의미하는 로그 레코드이다. 표현되지 않은 로그의 다른 속성은 고려하지 않는다)
로그 번호 | 로그 레코드 |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 | <T1 start>
<T1, A, 200, 400>
<T1 commit>
<T2 start>
<T2, B, 900, 1900>
<checkpoint>
<T3 start>
<T3, A, 400, 700>
<checkpoint>
<T5 start>
<T5, C, 100, 5000>
<T3 commit>
<T4 start>
<T4, D, 700, 1300>
<T5 commit>
<T4, E, 1300, 1500>
--시스템 고장발생-- |
- ①T1은 어떠한 undo와 redo 연산도 수행하지 않는다.
- ②데이터 항목 A와 B의 값은 각각 700과 900으로 갱신된다.
- ③데이터 항목 C와 D의 값은 각각 5000과 700으로 갱신된다.
- ④redo 연산은 T5, T3 순서로 수행된다.
선지를 골라 바로 채점해 보세요.
정답 ④
출처: 인사혁신처 공개 기출(공공데이터포털, 이용허락 제한 없음)