Re: PGOPTIONS="-fh" make check gets stuck since Postgres 11
Tom Lane <tgl@sss.pgh.pa.us>
From: Tom Lane <tgl@sss.pgh.pa.us>
To: Michael Paquier <michael@paquier.xyz>
Cc: Postgres hackers <pgsql-hackers@lists.postgresql.org>,
Thomas Munro <thomas.munro@gmail.com>
Date: 2019-07-08T14:19:01Z
Lists: pgsql-hackers
Michael Paquier <michael@paquier.xyz> writes: > I have begun playing with regressplans.sh which enforces various > combinations of "-f s|i|n|m|h" when running the regression tests, and > I have noticed that -fh can cause the server to become stuck in the > test join_hash.sql with this query (not sure which portion of the SET > LOCAL parameters are involved) : > select count(*) from simple r join extremely_skewed s using (id); > This does not happen with REL_10_STABLE where the test executes > immediately, so we has visibly an issue caused by v11 here. Yeah, these test cases were added by fa330f9ad in v11. What it looks like to me is that some of these test cases force "enable_mergejoin = off", so if you also have enable_hashjoin off then you are going to get a nestloop plan, and it's hardly surprising that that takes an unreasonable amount of time on the rather large test tables used in these tests. Given the purposes of this test, I think it'd be reasonable to force both enable_hashjoin = on and enable_mergejoin = off at the very top of the join_hash script, or the corresponding place in join.sql in v11. Thomas, was there a specific reason for forcing enable_mergejoin = off for only some of these tests? regards, tom lane
Commits
-
Force hash joins to be enabled in the hash join regression tests.
- 3955c50f3762 11.5 landed
- cba0fe024e35 13.0 landed
- 5526baf54902 12.0 landed