pg.ddx.io pgsql-hackers@postgresql.org mailing list archive
help / color / mirror / Atom feed From: Nathan Bossart <nathandbossart@gmail.com>
To: Peter Eisentraut <peter.eisentraut@enterprisedb.com>
Cc: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Benoit Lobréau <benoit.lobreau@gmail.com>
Cc: Alvaro Herrera <alvherre@alvh.no-ip.org>
Cc: Robert Haas <robertmhaas@gmail.com>
Cc: Bossart, Nathan <bossartn@amazon.com>
Cc: David Steele <david@pgmasters.net>
Cc: Fujii Masao <masao.fujii@oss.nttdata.com>
Cc: pgsql-hackers@postgresql.org <pgsql-hackers@postgresql.org>
Cc: Michael Paquier <michael@paquier.xyz>
Cc: Magnus Hagander <magnus@hagander.net>
Cc: Stephen Frost <sfrost@snowman.net>
Subject: Re: archive modules
Date: Wed, 5 Oct 2022 11:57:16 -0700
Message-ID: <20221005185716.GB201192@nathanxps13> (raw )
In-Reply-To: <4f66de67-35a0-3fe7-fa61-d618e1bd2c2c@enterprisedb.com >
References: <9ee5d180-2c32-a1ca-d3d7-63a723f68d9a@enterprisedb.com >
<20220914200305.GA2984249@nathanxps13 >
<37857474-5caa-ccb3-92a3-150ddfe851ab@enterprisedb.com >
<2884265.1663188443@sss.pgh.pa.us >
<20220914211746.GA2986134@nathanxps13 >
<2910705.1663193529@sss.pgh.pa.us >
<20220914222736.GA3042279@nathanxps13 >
<d9d1f7fd-dd99-98f9-8aed-0e976921573b@enterprisedb.com >
<20220923161402.GA736566@nathanxps13 >
<4f66de67-35a0-3fe7-fa61-d618e1bd2c2c@enterprisedb.com >
On Wed, Oct 05, 2022 at 07:55:58PM +0200, Peter Eisentraut wrote:
> Leaving archive_command empty is an intentional configuration choice.
>
> What we are talking about here is, arguably, a misconfiguration, so it
> should result in an error.
Okay. What do you think about something like the attached?
--
Nathan Bossart
Amazon Web Services: https://aws.amazon.com
Attachments:
[text/x-diff] fail_arch.patch (2.4K, ../20221005185716.GB201192@nathanxps13/2-fail_arch.patch)
download | inline diff:
diff --git a/doc/src/sgml/config.sgml b/doc/src/sgml/config.sgml
index d750290f13..bb4d985f35 100644
--- a/doc/src/sgml/config.sgml
+++ b/doc/src/sgml/config.sgml
@@ -3597,9 +3597,11 @@ include_dir 'conf.d'
</para>
<para>
This parameter can only be set in the <filename>postgresql.conf</filename>
- file or on the server command line. It is ignored unless
+ file or on the server command line. It is only used if
<varname>archive_mode</varname> was enabled at server start and
- <varname>archive_library</varname> is set to an empty string.
+ <varname>archive_library</varname> is set to an empty string. If both
+ <varname>archive_command</varname> and <varname>archive_library</varname>
+ are set, archiving will fail.
If <varname>archive_command</varname> is an empty string (the default) while
<varname>archive_mode</varname> is enabled (and <varname>archive_library</varname>
is set to an empty string), WAL archiving is temporarily
@@ -3624,7 +3626,9 @@ include_dir 'conf.d'
<para>
The library to use for archiving completed WAL file segments. If set to
an empty string (the default), archiving via shell is enabled, and
- <xref linkend="guc-archive-command"/> is used. Otherwise, the specified
+ <xref linkend="guc-archive-command"/> is used. If both
+ <varname>archive_command</varname> and <varname>archive_library</varname>
+ are set, archiving will fail. Otherwise, the specified
shared library is used for archiving. For more information, see
<xref linkend="backup-archiving-wal"/> and
<xref linkend="archive-modules"/>.
diff --git a/src/backend/postmaster/pgarch.c b/src/backend/postmaster/pgarch.c
index 3868cd7bd3..56dcc0dce5 100644
--- a/src/backend/postmaster/pgarch.c
+++ b/src/backend/postmaster/pgarch.c
@@ -838,6 +838,12 @@ LoadArchiveLibrary(void)
memset(&ArchiveContext, 0, sizeof(ArchiveModuleCallbacks));
+ if (XLogArchiveLibrary[0] != '\0' && XLogArchiveCommand[0] != '\0')
+ ereport(ERROR,
+ (errcode(ERRCODE_INVALID_PARAMETER_VALUE),
+ errmsg("both archive_command and archive_library specified"),
+ errdetail("Only one of archive_command, archive_library may be set.")));
+
/*
* If shell archiving is enabled, use our special initialization function.
* Otherwise, load the library and call its _PG_archive_module_init().
view thread (102+ messages) latest in thread
Message-ID: <20221005185716.GB201192@nathanxps13>
Permalink: ../20221005185716.GB201192@nathanxps13/
Also on: postgresql.org/message-id/20221005185716.GB201192@nathanxps13
copy link · copy postgr.es · copy git am
reply Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Reply to all the recipients using the --to and --cc options:
reply via email
To: pgsql-hackers@postgresql.org
Cc: nathandbossart@gmail.com, peter.eisentraut@enterprisedb.com, tgl@sss.pgh.pa.us, benoit.lobreau@gmail.com, alvherre@alvh.no-ip.org, robertmhaas@gmail.com, bossartn@amazon.com, david@pgmasters.net, masao.fujii@oss.nttdata.com, michael@paquier.xyz, magnus@hagander.net, sfrost@snowman.net
Subject: Re: archive modules
In-Reply-To: <20221005185716.GB201192@nathanxps13>
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox