From e4e87a32cc5559303068b148bd4aa6a39b8f44a1 Mon Sep 17 00:00:00 2001 From: Amit Kapila Date: Wed, 10 Mar 2021 10:04:20 +0530 Subject: [PATCH] Fix valgrind issue in commit 05c8482f7f. Initialize other newly added variables in max_parallel_hazard_context via is_parallel_safe() because we don't check the parallel-safety of target relations in that function. Reported-by: Tom Lane as per buildfarm Author: Amit Kapila Discussion: https://postgr.es/m/2060179.1615347455@sss.pgh.pa.us --- src/backend/optimizer/util/clauses.c | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/src/backend/optimizer/util/clauses.c b/src/backend/optimizer/util/clauses.c index 7ecdc783d5..7e25f94293 100644 --- a/src/backend/optimizer/util/clauses.c +++ b/src/backend/optimizer/util/clauses.c @@ -614,9 +614,10 @@ is_parallel_safe(PlannerInfo *root, Node *node) context.max_hazard = PROPARALLEL_SAFE; context.max_interesting = PROPARALLEL_RESTRICTED; context.safe_param_ids = NIL; - context.command_type = node != NULL && IsA(node, Query) ? - castNode(Query, node)->commandType : CMD_UNKNOWN; - context.planner_global = root->glob; + /* We don't need to evaluate target relation's parallel-safety here. */ + context.target_rte = NULL; + context.command_type = CMD_UNKNOWN; + context.planner_global = NULL; /* * The params that refer to the same or parent query level are considered