Re: pg_basebackup -F plain -R overwrites postgresql.auto.conf

Magnus Hagander <magnus@hagander.net>

From: Magnus Hagander <magnus@hagander.net>
To: Fujii Masao <masao.fujii@oss.nttdata.com>
Cc: Sergei Kornilov <sk@zsrv.org>, "pgsql-hackers@postgresql.org" <pgsql-hackers@postgresql.org>
Date: 2020-02-10T12:35:29Z
Lists: pgsql-hackers
On Mon, Feb 10, 2020 at 9:41 AM Fujii Masao <masao.fujii@oss.nttdata.com> wrote:
>
>
>
> On 2020/02/10 17:23, Sergei Kornilov wrote:
> > Hello
> >
> > Seems bug was introduced in caba97a9d9f4d4fa2531985fd12d3cd823da06f3 - in HEAD only
> >
> > In REL_12_STABLE we have:
> >
> >       bool            is_recovery_guc_supported = true;
> >
> >       if (PQserverVersion(conn) < MINIMUM_VERSION_FOR_RECOVERY_GUC)
> >               is_recovery_guc_supported = false;
> >
> >       snprintf(filename, MAXPGPATH, "%s/%s", basedir,
> >                        is_recovery_guc_supported ? "postgresql.auto.conf" : "recovery.conf");
> >
> >       cf = fopen(filename, is_recovery_guc_supported ? "a" : "w");
> >
> > It looks correct: append mode for postgresql.auto.conf
> >
> > In HEAD version is_recovery_guc_supported variable was replaced to inversed use_recovery_conf without change fopen mode.
>
> Yes! Thanks for pointing out that!
> So the patch needs to be applied only in master.

+1. We should absolutely not be overwriting the auto conf.

-- 
 Magnus Hagander
 Me: https://www.hagander.net/
 Work: https://www.redpill-linpro.com/



Commits

  1. Fix bug in pg_basebackup -F plain -R.

  2. Split out recovery confing-writing code from pg_basebackup