diff options
author | Michael Paquier | 2023-02-17 05:26:42 +0000 |
---|---|---|
committer | Michael Paquier | 2023-02-17 05:26:42 +0000 |
commit | 35739b87dcfef9fc0186aca659f262746fecd778 (patch) | |
tree | d0b8e0c9698f1e0096a6ba90808a405246923fe7 /src/backend/postmaster/Makefile | |
parent | d2ea2d310dfdc40328aca5b6c52225de78432e01 (diff) |
Redesign archive modules
A new callback named startup_cb, called shortly after a module is
loaded, is added. This makes possible the initialization of any
additional state data required by a module. This initial state data can
be saved in a ArchiveModuleState, that is now passed down to all the
callbacks that can be defined in a module. With this design, it is
possible to have a per-module state, aimed at opening the door to the
support of more than one archive module.
The initialization of the callbacks is changed so as
_PG_archive_module_init() does not anymore give in input a
ArchiveModuleCallbacks that a module has to fill in with callback
definitions. Instead, a module now needs to return a const
ArchiveModuleCallbacks.
All the structure and callback definitions of archive modules are moved
into their own header, named archive_module.h, from pgarch.h.
Command-based archiving follows the same line, with a new set of files
named shell_archive.{c,h}.
There are a few more items that are under discussion to improve the
design of archive modules, like the fact that basic_archive calls
sigsetjmp() by itself to define its own error handling flow. These will
be adjusted later, the changes done here cover already a good portion
of what has been discussed.
Any modules created for v15 will need to be adjusted to this new
design.
Author: Nathan Bossart
Reviewed-by: Andres Freund
Discussion: https://postgr.es/m/[email protected]
Diffstat (limited to 'src/backend/postmaster/Makefile')
-rw-r--r-- | src/backend/postmaster/Makefile | 1 |
1 files changed, 0 insertions, 1 deletions
diff --git a/src/backend/postmaster/Makefile b/src/backend/postmaster/Makefile index 3a794e54d60..047448b34eb 100644 --- a/src/backend/postmaster/Makefile +++ b/src/backend/postmaster/Makefile @@ -22,7 +22,6 @@ OBJS = \ interrupt.o \ pgarch.o \ postmaster.o \ - shell_archive.o \ startup.o \ syslogger.o \ walwriter.o |