Commit ec8f0e82 authored by Tom Lane's avatar Tom Lane

Add code to show join rule (for outer and IN joins) in join type name.

parent c5ba16a8
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
* Portions Copyright (c) 1994-5, Regents of the University of California * Portions Copyright (c) 1994-5, Regents of the University of California
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/commands/explain.c,v 1.102 2003/02/09 06:56:26 tgl Exp $ * $Header: /cvsroot/pgsql/src/backend/commands/explain.c,v 1.103 2003/02/10 17:06:23 tgl Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
...@@ -308,13 +308,73 @@ explain_outNode(StringInfo str, ...@@ -308,13 +308,73 @@ explain_outNode(StringInfo str,
pname = "Append"; pname = "Append";
break; break;
case T_NestLoop: case T_NestLoop:
pname = "Nested Loop"; switch (((NestLoop *) plan)->join.jointype)
{
case JOIN_INNER:
pname = "Nested Loop";
break;
case JOIN_LEFT:
pname = "Nested Loop Left Join";
break;
case JOIN_FULL:
pname = "Nested Loop Full Join";
break;
case JOIN_RIGHT:
pname = "Nested Loop Right Join";
break;
case JOIN_IN:
pname = "Nested Loop IN Join";
break;
default:
pname = "Nested Loop ??? Join";
break;
}
break; break;
case T_MergeJoin: case T_MergeJoin:
pname = "Merge Join"; switch (((MergeJoin *) plan)->join.jointype)
{
case JOIN_INNER:
pname = "Merge Join";
break;
case JOIN_LEFT:
pname = "Merge Left Join";
break;
case JOIN_FULL:
pname = "Merge Full Join";
break;
case JOIN_RIGHT:
pname = "Merge Right Join";
break;
case JOIN_IN:
pname = "Merge IN Join";
break;
default:
pname = "Merge ??? Join";
break;
}
break; break;
case T_HashJoin: case T_HashJoin:
pname = "Hash Join"; switch (((HashJoin *) plan)->join.jointype)
{
case JOIN_INNER:
pname = "Hash Join";
break;
case JOIN_LEFT:
pname = "Hash Left Join";
break;
case JOIN_FULL:
pname = "Hash Full Join";
break;
case JOIN_RIGHT:
pname = "Hash Right Join";
break;
case JOIN_IN:
pname = "Hash IN Join";
break;
default:
pname = "Hash ??? Join";
break;
}
break; break;
case T_SeqScan: case T_SeqScan:
pname = "Seq Scan"; pname = "Seq Scan";
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment