server crash in nodeAppend.c

Rajkumar Raghuwanshi <rajkumar.raghuwanshi@enterprisedb.com>

From: Rajkumar Raghuwanshi <rajkumar.raghuwanshi@enterprisedb.com>
To: pgsql-hackers <pgsql-hackers@postgresql.org>
Date: 2018-02-27T10:24:38Z
Lists: pgsql-hackers
Hi,

I am getting a server crash on PG-HEAD with below test case.

SET parallel_setup_cost=0;
SET parallel_tuple_cost=0;
create or replace function foobar() returns setof text as
$$ select 'foo'::varchar union all select 'bar'::varchar ; $$
language sql stable;

postgres=# select foobar();
server closed the connection unexpectedly
    This probably means the server terminated abnormally
    before or while processing the request.
The connection to the server was lost. Attempting reset: Failed.

--logfile
2018-02-26 22:15:52.908 IST [61738] LOG:  database system is ready to
accept connections
TRAP: FailedAssertion("!(whichplan >= 0 && whichplan <= node->as_nplans)",
File: "nodeAppend.c", Line: 365)
2018-02-26 22:17:50.441 IST [61738] LOG:  server process (PID 61748) was
terminated by signal 6: Aborted
2018-02-26 22:17:50.441 IST [61738] DETAIL:  Failed process was running:
select foobar();


Thanks & Regards,
Rajkumar Raghuwanshi
QMG, EnterpriseDB Corporation

Commits

  1. Fix assertion failure when Parallel Append is run serially.