아카이브 사설 토토은 모듈의 실제 아카이브 동작을 정의합니다. 서버는 각 개별 WAL 파일을 처리하는 데 필요에 따라 이를 호출합니다.
그startup_cb콜백은 모듈이 로드된 직후에 호출됩니다. 이 콜백을 사용하여 필요한 추가 초기화를 수행할 수 있습니다. 아카이브 모듈에 상태가 있으면 다음을 사용할 수 있습니다.상태-개인_데이터저장합니다.
typedef void (*ArchiveStartupCB) (ArchiveModuleState *state);
그check_configured_cb사설 토토은 모듈이 완전히 구성되었고 WAL 파일을 허용할 준비가 되었는지 확인하기 위해 호출됩니다(예: 구성 매개변수가 유효한 값으로 설정됨). 그렇지 않은 경우check_configured_cb이 정의되면 서버는 항상 모듈이 구성되어 있다고 가정합니다.
typedef bool (*ArchiveCheckConfiguredCB) (ArchiveModuleState *state);
만약참이 반환되면 서버는를 호출하여 파일 보관을 진행합니다.archive_file_cb사설 토토. 만일거짓이 반환되면 아카이브는 진행되지 않으며 아카이버는 서버 로그에 다음 메시지를 표시합니다.
경고: archive_mode가 활성화되었지만 아카이브가 구성되지 않았습니다.
후자의 경우 서버는 주기적으로 이 함수를 호출하며 반환될 때만 아카이브가 진행됩니다.참.
돌아갈 때거짓, 일반 경고 메시지에 몇 가지 추가 정보를 추가하는 것이 유용할 수 있습니다. 그렇게 하려면 다음 주소로 메시지를 보내주세요.arch_module_check_errdetail반환 전 매크로거짓. 좋아요errdetail(), 이 매크로는 형식 문자열과 그 뒤에 선택적 인수 목록을 허용합니다. 결과 문자열은 다음과 같이 방출됩니다.세부사항경고 메시지 줄.
그archive_file_cb단일 WAL 파일을 보관하기 위해 사설 토토이 호출됩니다.
typedef bool (*ArchiveFileCB) (ArchiveModuleState *state, const char *file, const char *path);
만약참이 반환되면 서버는 파일이 성공적으로 아카이브된 것처럼 진행하며, 여기에는 원본 WAL 파일을 재활용하거나 제거하는 작업이 포함될 수 있습니다. 만일거짓이 반환되거나 오류가 발생하면 서버는 원본 WAL 파일을 유지하고 나중에 아카이브를 다시 시도합니다.파일보관할 WAL 파일의 파일 이름만 포함하지만경로WAL 파일의 전체 경로(파일 이름 포함)를 포함합니다.
그archive_file_cb사설 토토은 호출 간에 재설정되는 단기 메모리 컨텍스트에서 호출됩니다. 더 오래 지속되는 스토리지가 필요한 경우 모듈의startup_cb사설 토토.
그shutdown_cb사설 토토은 아카이버 프로세스가 종료될 때(예: 오류 후) 또는 값이 호출될 때 호출됩니다.archive_library변경. 그렇지 않은 경우shutdown_cb이 정의되어 있으므로 이러한 상황에서는 특별한 조치가 취해지지 않습니다. 보관 모듈에 상태가 있는 경우 이 사설 토토은 누출을 방지하기 위해 해당 모듈을 해제해야 합니다.
typedef void (*ArchiveShutdownCB) (ArchiveModuleState *state);
문서에 올바르지 않은 내용이 있으면 일치하지 않습니다. 특정 기능에 대한 경험이 있거나 추가 설명이 필요한 경우 이용해주세요이 양식문서 문제를 보고합니다.