Re: recovery modules

Nathan Bossart <nathandbossart@gmail.com>

From: Nathan Bossart <nathandbossart@gmail.com>
To: Andres Freund <andres@anarazel.de>
Cc: Michael Paquier <michael@paquier.xyz>, pgsql-hackers@postgresql.org
Date: 2023-01-30T20:04:22Z
Lists: pgsql-hackers
On Mon, Jan 30, 2023 at 11:48:10AM -0800, Andres Freund wrote:
> I don't think _PG_archive_module_init() should actually allocate a memory
> context and do other similar initializations. Instead it should just return
> 'const ArchiveModuleCallbacks*', typically a single line.
> 
> Allocations etc should happen in one of the callbacks. That way we can
> actually have multiple instances of a module.

I think we'd need to invent a startup callback for archive modules for this
to work, but that's easy enough.

-- 
Nathan Bossart
Amazon Web Services: https://aws.amazon.com



Commits

  1. Redesign archive modules

  2. Remove uses of AssertVariableIsOfType() obsoleted by f2b73c8

  3. Rename contrib module basic_archive to basic_wal_module

  4. Refactor code for restoring files via shell commands

  5. Refactor code in charge of running shell-based recovery commands