Re: Refactoring postmaster's code to cleanup after child exit

From: Andres Freund <andres(at)anarazel(dot)de>
To: Tomas Vondra <tomas(at)vondra(dot)me>
Cc: Heikki Linnakangas <hlinnaka(at)iki(dot)fi>, Noah Misch <noah(at)leadboat(dot)com>, Michael Paquier <michael(at)paquier(dot)xyz>, Thomas Munro <thomas(dot)munro(at)gmail(dot)com>, "pgsql-hackers(at)postgresql(dot)org" <pgsql-hackers(at)postgresql(dot)org>
Subject: Re: Refactoring postmaster's code to cleanup after child exit
Date: 2025-03-07 17:41:24
Message-ID: usnp27mkphqecghrh53wztkswbueuvxkv5b7cs36f7hzix3ne3@2xdptp4ssxoj
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

On 2025-03-07 18:03:04 +0100, Tomas Vondra wrote:
> On 3/7/25 16:49, Andres Freund wrote:
> > Hi,
> >
> > On 2025-03-07 16:25:09 +0100, Tomas Vondra wrote:
> >> FWIW I keep running into this (and skink seems unhappy too). I ended up
> >> just adding a sleep(1), right before
> >>
> >> push(@sessions, background_psql_as_user('regress_superuser'));
> >>
> >> and that makes it work on all my machines (including rpi5).
> >
> > Can you confirm that the fix attached to my prior email suffices to address
> > the issue on your machine too? I'm planning to push the fixes soon.
> >
>
> Yes, the v2 fixes that too.

Cool, thanks for testing.

> I got confused by the message suggesting
>
> ... this pump stuff is all about getting better error messages
> on a test failure. It doesn't help with the original issue.
>
> which made me believe the tests will still fail, so I haven't tried the
> patches before.

That was just about 0002 (and 0001) neither fixing the race themselves, nor
being required to fix the race. 0002 does make it easier to understand what
went wrong, that's all...

Greetings,

Andres Freund

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Alexander Korotkov 2025-03-07 17:44:20 Re: pg_atomic_compare_exchange_*() and memory barriers
Previous Message Robert Treat 2025-03-07 17:41:08 Re: Statistics Import and Export