From 9f0c36aea0fba7d2b737964d34ed582edf644283 Mon Sep 17 00:00:00 2001 From: Robert Haas Date: Fri, 28 Mar 2025 08:59:33 -0400 Subject: [PATCH] pg_overexplain: Call previous hooks as appropriate. It makes no sense to remember the previous values of the hook variables and then never bother calling those functions. Thanks to Andrei for spotting my goof. Author: Andrei Lepikhov Discussion: http://postgr.es/m/41a344e3-ffb1-4296-8ba7-801f1e9642e5@gmail.com --- contrib/pg_overexplain/pg_overexplain.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/contrib/pg_overexplain/pg_overexplain.c b/contrib/pg_overexplain/pg_overexplain.c index 4554c3abbbf..5f623e06019 100644 --- a/contrib/pg_overexplain/pg_overexplain.c +++ b/contrib/pg_overexplain/pg_overexplain.c @@ -135,6 +135,10 @@ overexplain_per_node_hook(PlanState *planstate, List *ancestors, overexplain_options *options; Plan *plan = planstate->plan; + if (prev_explain_per_node_hook) + (*prev_explain_per_node_hook) (planstate, ancestors, relationship, + plan_name, es); + options = GetExplainExtensionState(es, es_extension_id); if (options == NULL) return; @@ -251,6 +255,10 @@ overexplain_per_plan_hook(PlannedStmt *plannedstmt, { overexplain_options *options; + if (prev_explain_per_plan_hook) + (*prev_explain_per_plan_hook) (plannedstmt, into, es, queryString, + params, queryEnv); + options = GetExplainExtensionState(es, es_extension_id); if (options == NULL) return; -- 2.39.5