[sqlsmith] Failed assertion in parallel worker in ExecInitSubPlan

From: Andreas Seltenreich <seltenreich(at)gmx(dot)de>
To: pgsql-hackers(at)postgresql(dot)org
Subject: [sqlsmith] Failed assertion in parallel worker in ExecInitSubPlan
Date: 2016-11-20 17:13:42
Message-ID: 8737im6pmh.fsf@credativ.de
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

the query below triggers a parallel worker assertion for me when run on
the regression database of master as of 0832f2d. The plan sports a
couple of InitPlan nodes below Gather.

regards,
Andreas

Gather (cost=1.64..84.29 rows=128 width=4)
Workers Planned: 1
Single Copy: true
-> Limit (cost=1.64..84.29 rows=128 width=4)
-> Subquery Scan on subq_0 (cost=1.64..451.06 rows=696 width=4)
Filter: (subq_0.c6 IS NOT NULL)
-> Nested Loop Left Join (cost=1.64..444.07 rows=699 width=145)
Join Filter: (sample_0.aa = sample_1.pageno)
InitPlan 4 (returns $3)
-> Result (cost=1.21..5.36 rows=15 width=0)
One-Time Filter: ($0 AND ($1 = $2))
InitPlan 1 (returns $0)
-> Result (cost=0.00..0.00 rows=0 width=0)
One-Time Filter: false
InitPlan 2 (returns $1)
-> Limit (cost=0.35..0.52 rows=1 width=4)
-> Gather (cost=0.00..1.04 rows=6 width=4)
Workers Planned: 1
-> Parallel Seq Scan on reltime_tbl (cost=0.00..1.04 rows=4 width=4)
InitPlan 3 (returns $2)
-> Limit (cost=0.52..0.69 rows=1 width=4)
-> Gather (cost=0.00..1.04 rows=6 width=4)
Workers Planned: 1
-> Parallel Seq Scan on reltime_tbl reltime_tbl_1 (cost=0.00..1.04 rows=4 width=4)
-> Sample Scan on pg_foreign_data_wrapper sample_2 (cost=1.21..5.36 rows=15 width=0)
Sampling: system ('3.1'::real)
-> Nested Loop (cost=0.15..382.85 rows=699 width=4)
-> Sample Scan on pg_largeobject sample_1 (cost=0.00..209.03 rows=699 width=8)
Sampling: bernoulli ('2.9'::real)
Filter: (pageno IS NOT NULL)
-> Index Only Scan using pg_foreign_table_relid_index on pg_foreign_table ref_0 (cost=0.15..0.24 rows=1 width=4)
Index Cond: (ftrelid = sample_1.loid)
-> Materialize (cost=0.00..16.06 rows=4 width=4)
-> Append (cost=0.00..16.04 rows=4 width=4)
-> Sample Scan on a sample_0 (cost=0.00..4.01 rows=1 width=4)
Sampling: system ('5'::real)
-> Sample Scan on b sample_0_1 (cost=0.00..4.01 rows=1 width=4)
Sampling: system ('5'::real)
-> Sample Scan on c sample_0_2 (cost=0.00..4.01 rows=1 width=4)
Sampling: system ('5'::real)
-> Sample Scan on d sample_0_3 (cost=0.00..4.01 rows=1 width=4)
Sampling: system ('5'::real)

--8<---------------cut here---------------start------------->8---
set force_parallel_mode to on;
set max_parallel_workers_per_gather to 2;

select
91 as c0
from
(select
(select pfname from public.pslot limit 1 offset 3)
as c0,
ref_1.grandtot as c1,
(select pg_catalog.min(procost) from pg_catalog.pg_proc)
as c2,
ref_0.ftoptions as c3,
ref_1.grandtot as c4,
sample_1.loid as c5,
pg_catalog.pg_rotate_logfile() as c6,
(select random from public.hash_i4_heap limit 1 offset 5)
as c7,
sample_1.loid as c8
from
public.a as sample_0 tablesample system (5)
right join pg_catalog.pg_largeobject as sample_1 tablesample bernoulli (2.9)
inner join pg_catalog.pg_foreign_table as ref_0
on (sample_1.loid = ref_0.ftrelid )
on (sample_0.aa = sample_1.pageno )
left join public.mvtest_tvv as ref_1
on (EXISTS (
select
sample_2.fdwoptions as c0,
sample_2.fdwhandler as c1,
(select during from public.test_range_excl limit 1 offset 89)
as c2
from
pg_catalog.pg_foreign_data_wrapper as sample_2 tablesample system (3.1)
where (EXISTS (
select
sample_3.b as c0,
(select grantee from information_schema.udt_privileges limit 1 offset 4)
as c1,
sample_3.b as c2,
sample_3.rf_a as c3,
sample_3.b as c4,
sample_3.rf_a as c5,
sample_3.rf_a as c6
from
public.clstr_tst_s as sample_3 tablesample system (8.1)
where sample_3.rf_a >= cast(null as int8)
limit 141))
and ((select f1 from public.reltime_tbl limit 1 offset 2)
= (select f1 from public.reltime_tbl limit 1 offset 3)
)
limit 49))
where sample_1.pageno is not NULL) as subq_0
where subq_0.c6 is not NULL
limit 128;
--8<---------------cut here---------------end--------------->8---

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Vik Fearing 2016-11-20 17:23:12 Re: Mail thread references in commits
Previous Message Tom Lane 2016-11-20 16:39:39 Re: How to change order sort of table in HashJoin