通过动态加载一个共享库来加载存档库,共享库的名称为archive_library的基本名称。
使用正常的库搜索路径来定位库。为了提供所需的存档模块回调并指示该库实际上是一个存档模块,
它需要提供一个名为_PG_archive_module_init
的函数。该函数接收一个结构体,
需要填充其中的回调函数指针以执行各个操作。
typedef struct ArchiveModuleCallbacks { ArchiveCheckConfiguredCB check_configured_cb; ArchiveFileCB archive_file_cb; ArchiveShutdownCB shutdown_cb; } ArchiveModuleCallbacks; typedef void (*ArchiveModuleInit) (struct ArchiveModuleCallbacks *cb);
只有archive_file_cb
回调是必需的。其他回调是可选的。