복제 로그 반영 프로세스의 오류 메시지는 $CUBRID/log/db-name@local-node-name_applylogdb_db-name_remote-node-name.err에 남는다. 복제 로그 반영 프로세스에서 남을 수 있는 오류 메시지의 severity는 fatal, error, notification이며 디폴트 severity는 error이다. 따라서 notification 오류 메시지를 남기려면 cubrid.conf의 error_log_level 값을 변경해야 한다. 이에 대한 자세한 설명은 오류 메시지 관련 파라미터를 참고한다.
복제 로그 반영 프로세스의 초기화 단계에서 남을 수 있는 오류 메시지는 아래와 같다.
오류 코드 |
오류 메시지 |
severity |
설명 |
조치 사항 |
---|---|---|---|---|
10 |
? 디스크 볼륨을 마운트할 수 없습니다. |
error |
동일한 복제 로그를 반영하려는 applylogdb가 이미 실행 중 |
동일한 복제 로그를 반영하려는 applylogdb 프로세스가 있는지 확인한다. |
1038 |
log applier: log applier가 시작되었습니다. required LSA: ?|?. last committed LSA: ?|?. |
error |
applylogdb 초기화 성공 후 정상 시작 |
이 오류 메시지는 복제 로그 반영 프로세스의 시작 정보를 나타내기 위해 기록되는 것이므로 조치 사항은 없다. |
복제 로그 반영 프로세스는 복제 로그 복사 프로세스에 의해 복사된 복제 로그를 읽어 분석하고 이를 반영한다. 복제 로그를 분석할 때 발생하는 오류 메시지는 아래와 같다.
오류 코드 |
오류 메시지 |
severity |
설명 |
조치 사항 |
---|---|---|---|---|
13 |
볼륨 ?의 ? 페이지를 읽는 도중에 I/O 에러 발생. |
error |
복제 반영할 로그 페이지 읽기 실패 |
cubrid applyinfo 유틸리티를 통해 복제 로그를 확인한다. |
17 |
내부 에러: 이미 해제된 볼륨 ?의 ? 페이지에 대한 읽기 시도. |
fatal |
복제 로그에 포함되지 않은 로그 페이지를 읽기 시도 |
cubrid applyinfo 유틸리티를 통해 복제 로그를 확인한다. |
81 |
내부 에러: logical log page ? may be corrupted. |
fatal |
기존 복제 반영 중이던 로그와 현재 로그가 불일치 또는 복제 로그 레코드 오류 |
cubrid applyinfo 유틸리티를 통해 복제 로그를 확인한다. |
82 |
로그 디스크 볼륨/파일 ?을(를) 마운트할 수 없습니다. |
error |
복제 로그 파일이 존재하지 않음 |
복제 로그 존재 유무를 확인한다. |
97 |
내부 에러: unable to find log page ? in log archives. |
error |
로그 페이지가 복제 로그에 존재하지 않음 |
cubrid applyinfo 유틸리티를 통해 복제 로그를 확인한다. |
897 |
압축 해제 오류입니다. |
error |
로그 레코드 압축 해제 실패 |
cubrid applyinfo 유틸리티를 통해 복제 로그를 확인한다. |
1028 |
log applier: Archive 로그에 예상치 못한 EOF 로그 레코드가 있습니다. LSA: ?|?. |
error |
아카이브 로그에 잘못된 로그 레코드가 포함 |
cubrid applyinfo 유틸리티를 통해 복제 로그를 확인한다. |
1029 |
log applier: 잘못된 로그 페이지/오프셋. page HDR: ?|?, final: ?|?, append LSA: ?|?, EOF LSA: ?|?, ha file status: ?, is end-of-log: ?. |
error |
잘못된 로그 레코드가 포함 |
cubrid applyinfo 유틸리티를 통해 복제 로그를 확인한다. |
1030 |
log applier: 잘못된 로그 레코드. LSA: ?|?, forw LSA: ?|?, backw LSA: ?|?, Trid: ?, prev tran LSA: ?|?, type: ?. |
error |
로그 레코드 헤더 오류 |
cubrid applyinfo 유틸리티를 통해 복제 로그를 확인한다. |
복제 로그 반영 프로세스는 복제 로그 복사 프로세스에 의해 복사된 복제 로그를 읽어 분석하고 이를 반영한다. 분석한 복제 로그를 반영할 때 발생하는 오류 메시지는 아래와 같다.
오류 코드 |
오류 메시지 |
severity |
설명 |
조치 사항 |
---|---|---|---|---|
72 |
트랜잭션이(인덱스 ?, ?@?|?) 시스템에 의해 취소되었습니다. |
error |
데드락 등에 의해 복제 반영 실패 |
내부적으로 복구된다. |
111 |
당신의 트랜잭션은 서버 failure 혹은 모드 변경으로 인해 취소되었습니다. |
error |
복제를 반영하려는 데이터베이스 서버 프로세스 종료 또는 모드 변경에 의해 복제 반영 실패 |
내부적으로 복구된다. |
191 |
? 상의 서버 ?에 접속할 수 없습니다. |
error |
복제를 반영하려는 데이터베이스 서버 프로세스와의 연결 종료 |
내부적으로 복구된다. |
195 |
서버 통신 에러: ?. |
error |
복제를 반영하려는 데이터베이스 서버 프로세스와의 연결 종료 |
내부적으로 복구된다. |
224 |
데이터베이스가 다시 시작되지 않았습니다. |
error |
복제를 반영하려는 데이터베이스 서버 프로세스와의 연결 종료 |
내부적으로 복구된다. |
1027 |
log applier: ?에서 ?로 복제 반영 상태를 변경하지 못하였습니다. |
error |
복제 반영 상태 변경 실패 |
내부적으로 복구된다. |
1031 |
log applier: Schema 복제 로그 반영에 실패하였습니다. class: ?, schema: ?, internal error: ?. |
error |
SCHEMA 복제 반영 실패 |
복제 불일치 여부를 확인하고 불일치 시 HA 복제 재구성을 실행한다. |
1032 |
log applier: Insert 복제 로그 반영에 실패하였습니다. class: ?, key: ?, internal error: ?. |
error |
INSERT 복제 반영 실패 |
복제 불일치 여부를 확인하고 불일치 시 HA 복제 재구성을 실행한다. |
1033 |
log applier: Update 복제 로그 반영에 실패하였습니다. class: ?, key: ?, internal error: ?. |
error |
UPDATE 복제 반영 실패 |
복제 불일치 여부를 확인하고 불일치 시 HA 복제 재구성을 실행한다. |
1034 |
log applier: Delete 복제 로그 반영에 실패하였습니다. class: ?, key: ?, internal error: ?. |
error |
DELETE 복제 반영 실패 |
복제 불일치 여부를 확인하고 불일치 시 HA 복제 재구성을 실행한다. |
1040 |
HA generic: ?. |
notification |
아카이브 로그의 마지막 레코드를 반영하거나 복제 반영 상태 변경 |
이 에러 메시지는 일반적인 정보를 위해 기록되는 로그로 조치 사항은 없다. |
복제 로그 반영 프로세스가 종료 및 재시작 시에 발생하는 오류 메시지는 다음과 같다.
오류 코드 |
오류 메시지 |
severity |
설명 |
조치 사항 |
---|---|---|---|---|
1035 |
log applier: log applier의 메모리 크기(? MB)가 최대 메모리 크기(? MB)보다 크거나 시작 시 메모리 크기(? MB)보다 2배 이상 증가하였습니다. required LSA: ?|?. last committed LSA: ?|?. |
error |
최대 메모리 크기 제한에 의해 복제 로그 반영 프로세스 재시작 |
내부적으로 복구된다. |
1036 |
log applier: log applier가 시그널에 의해 종료됩니다. |
error |
지정된 시그널에 의해 복제 로그 반영 프로세스 종료 |
내부적으로 복구된다. |