×
Мы обрабатываем cookies, чтобы сделать наш сайт удобнее и персонализированнее для вас. Подробнее: политика использования «cookies» и «политики конфиденциальности».

Для самостоятельной настройки ознакомьтесь с инструкцией

Дополнительные настройки cookies в браузерах

Файлы cookie автоматически загружаются в ваш браузер при посещении веб-сайта. У вас есть возможность управлять этими файлами. Если Вы не согласны с использованием файлов cookies, запретите их сохранение на своём устройстве, удалите уже имеющиеся файлы cookies через настройки браузера или прекратите использование сайта.

При отключении обработки cookie наш сайт продолжит функционировать, однако будут использоваться исключительно необходимые технические файлы, без которых работа ресурса невозможна.

Инструкция по отключению cookies
Принять
Настроить
Отклонить

ДОКУМЕНТАЦИЯ

Выберите версию, форк и язык для СУБД Digital Q.DataBase, чтобы прочитать или скачать всю документацию.
Техподдержка
Документация
Диасофт
Авторские права © 2016–2025 ООО "Диасофт Экосистема"
Скачать всю документацию:

5.14.2. Функции обратного вызова модуля архивирования

5.14.2.1. Функция обратного вызова Startup
5.14.2.2. Функция обратного вызова Check
5.14.2.3. Функция обратного вызова для архивирования
5.14.2.4. Функция обратного вызова для завершения работы

Функции обратного вызова архивирования определяют фактическое поведение модуля при архивировании. Сервер будет вызывать их по мере необходимости для обработки каждого отдельного файла WAL.

5.14.2.1. Функция обратного вызова Startup #

Функция обратного вызова startup_cb вызывается вскоре после загрузки модуля. Данная функция обратного вызова может использоваться для выполнения любой необходимой дополнительной инициализации. Если модуль архивирования имеет состояние, он может использовать state->private_data для его хранения.

typedef void (*ArchiveStartupCB) (ArchiveModuleState *state);

5.14.2.2. Функция обратного вызова Check #

Функция обратного вызова check_configured_cb вызывается для определения того, полностью ли настроен модуль и готов ли он принимать файлы WAL (например, установлены ли допустимые значения его параметров конфигурации). Если функция check_configured_cb не определена, сервер всегда считает, что модуль настроен.

typedef bool (*ArchiveCheckConfiguredCB) (ArchiveModuleState *state);

Если true возвращается, сервер продолжит архивацию файла, вызвав функцию archive_file_cb обратного вызова. Если false возвращается, архивация не будет продолжена, и процесс архивации выведет в журнал сервера следующее сообщение:

WARNING:  archive_mode enabled, yet archiving is not configured

В последнем случае сервер будет периодически вызывать эту функцию, и архивация возобновится только тогда, когда она вернет true.

Примечание

При возврате false, может быть полезно добавить дополнительную информацию к общему предупреждающему сообщению. Для этого передайте сообщение в arch_module_check_errdetail макрос перед возвратом false. Подобно errdetail(), этот макрос принимает строку формата с последующим необязательным списком аргументов. Результирующая строка будет выведена в DETAIL строке предупреждающего сообщения.

5.14.2.3. Функция обратного вызова для архивирования #

Функция обратного вызова archive_file_cb функция обратного вызова вызывается для архивирования одного файла WAL.

typedef bool (*ArchiveFileCB) (ArchiveModuleState *state, const char *file, const char *path);

Если true возвращается, сервер продолжает работу так, будто файл был успешно архивирован, что может включать повторное использование или удаление исходного файла WAL. Если false возвращается или возникает ошибка, сервер сохранит исходный файл WAL и позже повторит попытку архивирования. file будет содержать только имя файла WAL для архивирования, в то время как path содержит полный путь к файлу WAL (включая имя файла).

Примечание

Данная archive_file_cb функция обратного вызова вызывается в кратковременном контексте памяти, который сбрасывается между вызовами. Если вам требуется хранилище с более длительным временем жизни, создайте контекст памяти в startup_cb функции обратного вызова модуля.

5.14.2.4. Функция обратного вызова для завершения работы #

Функция обратного вызова shutdown_cb функция обратного вызова вызывается при завершении процесса архиватора (например, в случае ошибки) или когда значение archive_library изменений. Если не shutdown_cb определена, то в данных ситуациях никаких специальных действий не выполняется. Если у модуля архивирования имеется какое-либо состояние, данная функция обратного вызова должна освободить его во избежание утечек ресурсов.

typedef void (*ArchiveShutdownCB) (ArchiveModuleState *state);

Наверх
свяжитесь
с нами
контакты
Для прямой связи с нами вы можете использовать контакты ниже, либо оставить заявку через форму обратной связи, и мы обязательно свяжемся с вами

*поля обязательные к заполнению