Re: Query running for very long time (server hanged) with parallel append - Mailing list pgsql-hackers

From Amit Khandekar
Subject Re: Query running for very long time (server hanged) with parallel append
Date
Msg-id CAJ3gD9eGxYUwnyuk=F8cB1QKJN42-pKs7pWui4RtKPh7EKhVQg@mail.gmail.com
Whole thread Raw
In response to Re: Query running for very long time (server hanged) with parallel append  (Thomas Munro <thomas.munro@enterprisedb.com>)
Responses Re: Query running for very long time (server hanged) with parallel append
List pgsql-hackers
On 2 February 2018 at 03:50, Thomas Munro <thomas.munro@enterprisedb.com> wrote:
> Whatever logic bug might be causing the query to hang, it's not good
> that we're unable to SIGINT/SIGTERM our way out of this state.  See
> also this other bug report for a known problem (already fixed but not
> yet released), but which came with an extra complaint, as yet
> unexplained, that the query couldn't be interrupted:
>
> https://www.postgresql.org/message-id/flat/151724453314.1238.409882538067070269%40wrigleys.postgresql.org

Yeah, it is not good that there is no response to the SIGINT.

The query is actually hanging because one of the workers is in a small
loop where it iterates over the subplans searching for unfinished
plans, and it never comes out of the loop (it's a bug which I am yet
to fix). And it does not make sense to keep CHECK_FOR_INTERRUPTS in
each iteration; it's a small loop that does not pass control to any
other functions .

But I am not sure about this : while the workers are at it, why the
backend that is waiting for the workers does not come out of the wait
state with a SIGINT. I guess the same issue has been discussed in the
mail thread that you pointed.

-- 
Thanks,
-Amit Khandekar
EnterpriseDB Corporation
The Postgres Database Company


pgsql-hackers by date:

Previous
From: "Tsunakawa, Takayuki"
Date:
Subject: RE: Temporary tables prevent autovacuum, leading to XID wraparound
Next
From: Michael Paquier
Date:
Subject: Re: CALL stmt, ERROR: unrecognized node type: 113 bug