Thread
Commits
-
Fix miscomputation of direct_lateral_relids for join relations.
- caecab229abd 11.11 landed
- b1738ff6ab73 14.0 landed
- ab4cbb4bceff 9.6.21 landed
- 8c5da2d512e3 9.5.25 landed
- 785f4462daaf 10.16 landed
- 666a4de939bf 13.2 landed
- 4f728a1f5f06 12.6 landed
-
Undo mistaken tightening in join_is_legal().
- cfe30a72fa80 9.6.0 cited
-
[sqlsmith] Planner error on lateral joins
Andreas Seltenreich <seltenreich@gmx.de> — 2020-11-29T18:40:50Z
Hi, testing with sqlsmith on master at 3df51ca8b3 produced one instance of the following error: ERROR: failed to build any 6-way joins I can reproduce it on a fresh regression database with the query below. These were last logged in 2015. Back then, it resulted in this commit: http://git.postgresql.org/pg/commitdiff/cfe30a72fa80528997357cb0780412736767e8c4 regards, Andreas select * from (select sample_1.a as c0 from fkpart5.fk2 as sample_1) as subq_0, lateral (select 1 from (select subq_0.c0 as c3, subq_5.c0 as c7, sample_2.b as c9 from public.brin_test as sample_2, lateral (select subq_3.c1 as c0 from fkpart5.pk3 as sample_3, lateral (select sample_2.a as c0, sample_3.a as c1 from public.rtest_interface as ref_0 ) as subq_1, lateral (select subq_1.c1 as c1 from public.alter_table_under_transition_tables as ref_1 ) as subq_3 ) as subq_5) as subq_6 right join public.gtest30_1 as sample_6 on (true) where subq_6.c7 = subq_6.c3) as subq_7; -
Re: [sqlsmith] Planner error on lateral joins
Tom Lane <tgl@sss.pgh.pa.us> — 2020-11-29T20:39:42Z
Andreas Seltenreich <seltenreich@gmx.de> writes: > testing with sqlsmith on master at 3df51ca8b3 produced one instance of > the following error: > ERROR: failed to build any 6-way joins Thanks for the test case! The attached modification to use only longstanding test tables fails back to 9.5, but succeeds in 9.4. I've not tried to bisect yet. regards, tom lane
-
Re: [sqlsmith] Planner error on lateral joins
Tom Lane <tgl@sss.pgh.pa.us> — 2020-11-30T02:18:15Z
I wrote: > Andreas Seltenreich <seltenreich@gmx.de> writes: >> testing with sqlsmith on master at 3df51ca8b3 produced one instance of >> the following error: >> ERROR: failed to build any 6-way joins > Thanks for the test case! The attached modification to use only > longstanding test tables fails back to 9.5, but succeeds in 9.4. > I've not tried to bisect yet. Seems to be a missed consideration in add_placeholders_to_joinrel. The attached fixes it for me. regards, tom lane