v0-0001-Add-into-pg_overexplain-example-on-a-hook-call-ch.patch
text/x-patch
Filename: v0-0001-Add-into-pg_overexplain-example-on-a-hook-call-ch.patch
Type: text/x-patch
Part: 0
Message:
Re: making EXPLAIN extensible
Patch
Same data as JSON:
GET /api/v1/attachments/:id/patch
the parsed metadata as JSON — format, series position, per-file stats; never the diff bytes.
API reference →
Format: format-patch
Series: patch v0-0001
Subject: Add into pg_overexplain example on a hook call chain agreement.
| File | + | − |
|---|---|---|
| contrib/pg_overexplain/pg_overexplain.c | 8 | 0 |
From 03a88d291cfe085bcff10e0595a679bcfcf14fc8 Mon Sep 17 00:00:00 2001
From: "Andrei V. Lepikhov" <lepihov@gmail.com>
Date: Thu, 27 Mar 2025 22:27:33 +0100
Subject: [PATCH v0] Add into pg_overexplain example on a hook call chain
agreement.
---
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