mirror of
https://github.com/postgres/postgres.git
synced 2025-05-02 11:44:50 +03:00
Back-patch "Fix parallel hash join path search."
Back-patch commit 655393a022bd653e2b48dbf20b69236981e35195 to 9.6. This synchronizes the relavant code and helps in generating parallel paths in some cases in 9.6. This also helps in back-patch of future patches where we can get the same plan in all branches. Discussion: https://postgr.es/m/CAA4eK1+XK_875cJA1HPVpx9C7C8Fp7i4QzLJ17T3igfU2iadxQ@mail.gmail.com
This commit is contained in:
parent
fd4f2af774
commit
271b678436
@ -1469,9 +1469,9 @@ hash_inner_and_outer(PlannerInfo *root,
|
||||
/*
|
||||
* Normally, given that the joinrel is parallel-safe, the cheapest
|
||||
* total inner path will also be parallel-safe, but if not, we'll
|
||||
* have to search cheapest_parameterized_paths for the cheapest
|
||||
* safe, unparameterized inner path. If doing JOIN_UNIQUE_INNER,
|
||||
* we can't use any alternative inner path.
|
||||
* have to search for the cheapest safe, unparameterized inner
|
||||
* path. If doing JOIN_UNIQUE_INNER, we can't use any alternative
|
||||
* inner path.
|
||||
*/
|
||||
if (cheapest_total_inner->parallel_safe)
|
||||
cheapest_safe_inner = cheapest_total_inner;
|
||||
@ -1479,7 +1479,7 @@ hash_inner_and_outer(PlannerInfo *root,
|
||||
{
|
||||
ListCell *lc;
|
||||
|
||||
foreach(lc, innerrel->cheapest_parameterized_paths)
|
||||
foreach(lc, innerrel->pathlist)
|
||||
{
|
||||
Path *innerpath = (Path *) lfirst(lc);
|
||||
|
||||
|
Loading…
x
Reference in New Issue
Block a user