Re: Transaction timeout

Alexander Korotkov <aekorotkov@gmail.com>

From: Alexander Korotkov <aekorotkov@gmail.com>
To: "Andrey M. Borodin" <x4mmm@yandex-team.ru>
Cc: Japin Li <japinli@hotmail.com>, Peter Smith <smithpb2250@gmail.com>, Junwang Zhao <zhjwpku@gmail.com>, 邱宇航 <iamqyh@gmail.com>, Fujii Masao <masao.fujii@oss.nttdata.com>, Andrew Borodin <amborodin86@gmail.com>, Michael Paquier <michael.paquier@gmail.com>, Nikolay Samokhvalov <samokhvalov@gmail.com>, pgsql-hackers mailing list <pgsql-hackers@postgresql.org>, pgsql-hackers mailing list <pgsql-hackers@lists.postgresql.org>, Andres Freund <andres@anarazel.de>
Date: 2024-02-25T18:50:48Z
Lists: pgsql-hackers
Hi, Andrey!

On Thu, Feb 22, 2024 at 7:23 PM Andrey M. Borodin <x4mmm@yandex-team.ru> wrote:
> > On 19 Feb 2024, at 15:17, Japin Li <japinli@hotmail.com> wrote:
> >
> >
> > +1
>
> PFA patch set of 4 patches:
> 1. remove all potential flaky tests. BTW recently we had a bingo when 3 of them failed together [0]
> 2-3. waiting injection points patchset by Michael Paquier, intact v2 from nearby thread.
> 4. prototype of simple TAP tests for timeouts.
>
> I did not add a test for statement_timeout, because it still have good coverage in isolation tests. But added test for idle_sessoin_timeout.
> Maybe these tests could be implemented with NOTICE injection points (not requiring steps 2-3), but I'm afraid that they might be flaky too: FATALed connection might not send information necesary for test success (we will see something like "PQconsumeInput failed: server closed the connection unexpectedly" as in [1]).

Thank you for the patches.  I've pushed the 0001 patch to avoid
further failures on buildfarm.  Let 0004 wait till injections points
by Mechael are committed.

------
Regards,
Alexander Korotkov



Commits

  1. Add TAP tests for timeouts

  2. Remove flaky isolation tests for timeouts

  3. Followup fixes for transaction_timeout

  4. Introduce transaction_timeout

  5. On systems that have setsid(2) (which should be just about everything except