From 4f8a8c832fdf323e0d70c3134ec9516c161582d0 Mon Sep 17 00:00:00 2001 From: Thomas Munro Date: Fri, 22 Dec 2017 23:58:15 +1300 Subject: [PATCH] Fix costing of parallel hash joins. Commit 1804284042e659e7d16904e7bbb0ad546394b6a3 established that single-batch parallel-aware hash joins could create one large shared hash table using the combined work_mem budget of all participants. The costing accidentally assumed that parallel-oblivious hash joins could also do that. Repair. Reported-By: Antonin Houska Discussion: https://postgr.es/m/12441.1513935950%40localhost --- src/backend/optimizer/path/joinpath.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/backend/optimizer/path/joinpath.c b/src/backend/optimizer/path/joinpath.c index e774130ac8d..bc670cba4fe 100644 --- a/src/backend/optimizer/path/joinpath.c +++ b/src/backend/optimizer/path/joinpath.c @@ -814,7 +814,7 @@ try_partial_hashjoin_path(PlannerInfo *root, * cost. Bail out right away if it looks terrible. */ initial_cost_hashjoin(root, &workspace, jointype, hashclauses, - outer_path, inner_path, extra, true); + outer_path, inner_path, extra, parallel_hash); if (!add_partial_path_precheck(joinrel, workspace.total_cost, NIL)) return; -- 2.15.0