From 5e202d8586b32b07217bd471036209aa73af67f5 Mon Sep 17 00:00:00 2001 From: "Marc G. Fournier" Date: Mon, 27 Apr 1998 16:57:09 +0000 Subject: [PATCH] show the index used in an explain From: Zeugswetter Andreas SARZ --- src/backend/commands/explain.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/backend/commands/explain.c b/src/backend/commands/explain.c index a8b32e2e0a..82ef0a2939 100644 --- a/src/backend/commands/explain.c +++ b/src/backend/commands/explain.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/commands/explain.c,v 1.18 1998/02/26 04:30:58 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/commands/explain.c,v 1.19 1998/04/27 16:57:09 scrappy Exp $ * *------------------------------------------------------------------------- */ @@ -23,6 +23,7 @@ #include #include #include +#include typedef struct ExplainState { @@ -117,6 +118,8 @@ ExplainQuery(Query *query, bool verbose, CommandDest dest) static void explain_outNode(StringInfo str, Plan *plan, int indent, ExplainState *es) { + List *l; + Relation relation; char *pname; char buf[1000]; int i; @@ -184,8 +187,12 @@ explain_outNode(StringInfo str, Plan *plan, int indent, ExplainState *es) appendStringInfo(str, pname); switch (nodeTag(plan)) { - case T_SeqScan: case T_IndexScan: + appendStringInfo(str, " using "); + l = ((IndexScan *) plan)->indxid; + relation = RelationIdCacheGetRelation((int) lfirst(l)); + appendStringInfo(str, (RelationGetRelationName(relation))->data); + case T_SeqScan: if (((Scan *) plan)->scanrelid > 0) { RangeTblEntry *rte = nth(((Scan *) plan)->scanrelid - 1, es->rtable);