통신 종료 라이브러리 오류 처리 및 리턴 코드

통신 종료 라이브러리 API에 오류가 발생하면, API가 errormsg 필드에서 ASCII 텍스트 문자열을 리턴할 수 있습니다. 해당 ASCII 텍스트 문자열은 리턴 코드보다 많은 특정 문제점 설명을 제공합니다. 데이터베이스 관리자는 이 전체 문자열을 db2diag 로그 파일에 작성합니다.

이러한 오류 메시지에 대한 메모리는 통신 종료 라이브러리에서 할당해야 합니다. 따라서 라이브러리는 API를 제공하여 db2commexitFreeErrormsg에 대한 메모리를 제거해야 합니다.

errormsg 필드 외에도, 초기화 시 메시지 로그 함수 포인터인 logMessage_fn이 통신 버퍼 종료 라이브러리에 전달됩니다. 라이브러리는 함수를 사용하여 db2diag 로그 파일에 디버깅 정보를 로그할 수 있습니다. 예를 들면, 다음과 같습니다.
// Log an message indicate init successful
  (*(logMessage_fn))(DB2COMMEXIT_LOG_CRITICAL,
                     "comm exit initialization successful",
                      strlen("comm. exit initialization successful"));
db2secLogMessage 함수의 각 매개변수에 대한 세부사항은 관련된 참조의 초기화 API db2commexitInit를 참조하십시오.

리턴 코드

표 1. 통신 종료 라이브러리가 데이터베이스 관리자로 리턴할 수 있는 리턴 코드
리턴 코드 값 정의 세부사항
0 DB2COMMEXIT_SUCCESS 성공적인 실행
-1 DB2COMMEXIT_ERR_UNKNOWN 라이브러리에 예기치 않은 오류가 발생했습니다.
-2 DB2COMMEXIT_ERR_DROP_CONNECTION 라이브러리에서 이를 호출한 연결을 종료해야 한다고 판별했습니다.