Re: Exit walsender before confirming remote flush in logical replication

From: Greg Sabino Mullane <htamfids(at)gmail(dot)com>
To: Andrey Silitskiy <a(dot)silitskiy(at)postgrespro(dot)ru>
Cc: Japin Li <japinli(at)hotmail(dot)com>, Ronan Dunklau <ronan(at)dunklau(dot)fr>, Vitaly Davydov <v(dot)davydov(at)postgrespro(dot)ru>, "Hayato Kuroda (Fujitsu)" <kuroda(dot)hayato(at)fujitsu(dot)com>, "Takamichi Osumi (Fujitsu)" <osumi(dot)takamichi(at)fujitsu(dot)com>, "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>, "sawada(dot)mshk(at)gmail(dot)com" <sawada(dot)mshk(at)gmail(dot)com>, "michael(at)paquier(dot)xyz" <michael(at)paquier(dot)xyz>, "peter(dot)eisentraut(at)enterprisedb(dot)com" <peter(dot)eisentraut(at)enterprisedb(dot)com>, "dilipbalaut(at)gmail(dot)com" <dilipbalaut(at)gmail(dot)com>, "andres(at)anarazel(dot)de" <andres(at)anarazel(dot)de>, "amit(dot)kapila16(at)gmail(dot)com" <amit(dot)kapila16(at)gmail(dot)com>, Kyotaro Horiguchi <horikyota(dot)ntt(at)gmail(dot)com>, Peter Smith <smithpb2250(at)gmail(dot)com>, Fujii Masao <masao(dot)fujii(at)gmail(dot)com>, Alexander Korotkov <aekorotkov(at)gmail(dot)com>
Subject: Re: Exit walsender before confirming remote flush in logical replication
Date: 2026-03-13 12:24:04
Message-ID: CAKAnmmJ1urVN1XaTe_prd1Gh-cJ9QKEQ1G3zwSmT6SYwJ-mKBw@mail.gmail.com
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Fri, Mar 13, 2026 at 8:00 AM Andrey Silitskiy <a(dot)silitskiy(at)postgrespro(dot)ru>
wrote:

> Сhecking got_SIGUSR2 alone is not enough. If we received got_STOPPING,
> got_SIGUSR2 will be set only if WalSndCaughtUp is true. This may fail, and
> then the test hangs with the inability to terminate walsender.
>

Got it, thanks

> > Tests:
> > * Should test something other than -1 and 0 (e.g. a positive value)
>
> I'm not sure if it's worth adding a test containing a long timeout wait. I
> can add a test-case with a small positive parameter value (for example,
> 200ms). However, I don't think it will be possible to verify the time
> period for which the walsender was actually terminated. Still, it will be
> limited to checking the fact of termination. What do you think?
>

+1. I don't think we need to measure any times, but we do need to exercise
that whole part of the code, so even a setting of 5ms would be an
improvement. Without it, the tests don't even touch the second half of
WalSndCheckShutdownTimeOut(), which is really the interesting bit.

--
Cheers,
Greg

In response to

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Andrew Dunstan 2026-03-13 12:30:27 Re: IS JSON predicate support for domain base type as JSON/JSONB/BYTEA/TEXT
Previous Message David Rowley 2026-03-13 12:18:46 Re: More speedups for tuple deformation