Tom Lane писал(а) 2025-03-26 22:38:
Vladlen Popolitov writes:
d) Above query will start parallel worker(s). When worker(s)
finish(es),
it/they send SIGUSR1 that is caught by debugger. When you dimiss
the signal message, you find that query continues to run, but really
it
waits (in latch.c or
Andres Freund писал(а) 2025-03-27 01:22:
Hi,
Isn't that to be expected? If I understand correctly, the way your gdb
is
configured is that it intercepts SIGUSR1 signals *without* passing it
on to
the application (i.e. postgres). We rely on the signal to be
delivered. Which
it isn't. Thus a
Hi!
During debug session I found, that queries with Parallel Seq Scan hang
in the current master - the leader worker waits indefinitely the signal
from parallel workers. A query is not possible to break, the leader
does not check interrupt status in the waiting loop.
1. How to reproduce:
a) Crea
On Wed, Mar 26, 2025 at 12:32 PM Nikita Malakhov wrote:
> Vladlen, I've checked your example and also got this behavior
> on the current master under Gdb (Ubuntu 22.04 LTS).
>
> On the query above server waits in this state (as shown by gdb):
> Program received signal SIGUSR1, User defined signal
Hi,
On 2025-03-26 21:53:35 +0700, Vladlen Popolitov wrote:
> During debug session I found, that queries with Parallel Seq Scan hang
> in the current master - the leader worker waits indefinitely the signal
> from parallel workers. A query is not possible to break, the leader
> does not check inter
Hi!
Vladlen, I've checked your example and also got this behavior
on the current master under Gdb (Ubuntu 22.04 LTS).
On the query above server waits in this state (as shown by gdb):
Program received signal SIGUSR1, User defined signal 1.
0x562beb21c6ed in ExecInterpExpr (state=0x562bec781858
Vladlen Popolitov writes:
> d) Above query will start parallel worker(s). When worker(s) finish(es),
> it/they send SIGUSR1 that is caught by debugger. When you dimiss
> the signal message, you find that query continues to run, but really it
> waits (in latch.c or in waiteventset.c depending on co