Re: [COMMITTERS] pgsql: Unify SIGHUP handling between normal andwalsender backends. - Mailing list pgsql-committers

From Andres Freund
Subject Re: [COMMITTERS] pgsql: Unify SIGHUP handling between normal andwalsender backends.
Date
Msg-id 20170606232319.bkogyyi63oyodatg@alap3.anarazel.de
Whole thread Raw
In response to [COMMITTERS] pgsql: Unify SIGHUP handling between normal and walsender backends.  (Andres Freund <andres@anarazel.de>)
Responses Re: [COMMITTERS] pgsql: Unify SIGHUP handling between normal and walsender backends.  (Tom Lane <tgl@sss.pgh.pa.us>)
List pgsql-committers
On 2017-06-06 02:25:18 +0000, Andres Freund wrote:
> Unify SIGHUP handling between normal and walsender backends.
>
> Because walsender and normal backends share the same main loop it's
> problematic to have two different flag variables, set in signal
> handlers, indicating a pending configuration reload.  Only certain
> walsender commands reach code paths checking for the
> variable (START_[LOGICAL_]REPLICATION, CREATE_REPLICATION_SLOT
> ... LOGICAL, notably not base backups).
>
> This is a bug present since the introduction of walsender, but has
> gotten worse in releases since then which allow walsender to do more.
>
> A later patch, not slated for v10, will similarly unify SIGHUP
> handling in other types of processes as well.
>
> Author: Petr Jelinek, Andres Freund
> Reviewed-By: Michael Paquier
> Discussion: https://postgr.es/m/20170423235941.qosiuoyqprq4nu7v@alap3.anarazel.de
> Backpatch: 9.2-, bug is present since 9.0
>
> Branch
> ------
> REL9_6_STABLE
>
> Details
> -------
> https://git.postgresql.org/pg/commitdiff/b8bd32a51f2dd451644175af7ae32f9bec3153f1
>
> Modified Files
> --------------
> src/backend/replication/walsender.c | 29 +++++++----------------------
> src/backend/tcop/postgres.c         | 30 ++++++++++++++----------------
> src/backend/utils/init/globals.c    |  1 +
> src/include/miscadmin.h             |  5 +++++
> 4 files changed, 27 insertions(+), 38 deletions(-)

This commit, or one of its siblings, seemingly caused 'handfish' to fail
with a weird error message:
https://buildfarm.postgresql.org/cgi-bin/show_log.pl?nm=handfish&dt=2017-06-06%2002%3A59%3A01

ccache gcc -Wall -Wmissing-prototypes -Wpointer-arith -Wdeclaration-after-statement -Wendif-labels
-Wmissing-format-attribute-Wformat-security -fno-strict-aliasing -fwrapv -fexcess-precision=standard -g -O2 -I. -I.
-I../../../src/include-D_GNU_SOURCE -I/usr/include/libxml2   -c -o walsender.o walsender.c 
Assembler messages:
Fatal error: can't create walsender.o: No such file or directory
<builtin>: recipe for target 'walsender.o' failed

I'm clueless what that could be caused by, given that the rest of the
9.6 animals do not seem to be scared.

Any ideas?   So far I just plan to wait till the machine runs again on
its own.

- Andres


pgsql-committers by date:

Previous
From: Peter Eisentraut
Date:
Subject: [COMMITTERS] pgsql: Improve handover logic between sync and apply workers
Next
From: Tom Lane
Date:
Subject: Re: [COMMITTERS] pgsql: Unify SIGHUP handling between normal and walsender backends.