mirror of
https://github.com/postgres/postgres.git
synced 2025-10-22 14:32:25 +03:00
Allow archiving via loadable modules.
Running a shell command for each file to be archived has a lot of overhead and may not offer as much error checking as you want, or the exact semantics that you want. So, offer the option to call a loadable module for each file to be archived, rather than running a shell command. Also, add a 'basic_archive' contrib module as an example implementation that archives to a local directory. Nathan Bossart, with a little bit of kibitzing by me. Discussion: http://postgr.es/m/20220202224433.GA1036711@nathanxps13
This commit is contained in:
@@ -3881,13 +3881,23 @@ static struct config_string ConfigureNamesString[] =
|
||||
{
|
||||
{"archive_command", PGC_SIGHUP, WAL_ARCHIVING,
|
||||
gettext_noop("Sets the shell command that will be called to archive a WAL file."),
|
||||
NULL
|
||||
gettext_noop("This is used only if \"archive_library\" is not set.")
|
||||
},
|
||||
&XLogArchiveCommand,
|
||||
"",
|
||||
NULL, NULL, show_archive_command
|
||||
},
|
||||
|
||||
{
|
||||
{"archive_library", PGC_SIGHUP, WAL_ARCHIVING,
|
||||
gettext_noop("Sets the library that will be called to archive a WAL file."),
|
||||
gettext_noop("An empty string indicates that \"archive_command\" should be used.")
|
||||
},
|
||||
&XLogArchiveLibrary,
|
||||
"",
|
||||
NULL, NULL, NULL
|
||||
},
|
||||
|
||||
{
|
||||
{"restore_command", PGC_SIGHUP, WAL_ARCHIVE_RECOVERY,
|
||||
gettext_noop("Sets the shell command that will be called to retrieve an archived WAL file."),
|
||||
|
Reference in New Issue
Block a user