1
0
mirror of https://github.com/postgres/postgres.git synced 2025-11-10 17:42:29 +03:00

Executor no longer cares about mergejoinop, mergerightorder, mergeleftorder,

so remove them from MergeJoin node.  Hack together a partial
solution for commuted mergejoin operators --- yesterday
a mergejoin int4 = int8 would crash if the planner decided to
commute it, today it works.  The planner's representation of
mergejoins really needs a rewrite though.
Also, further testing of mergejoin ops in opr_sanity regress test.
This commit is contained in:
Tom Lane
1999-03-01 00:10:44 +00:00
parent d077c61492
commit b204d10c79
10 changed files with 156 additions and 95 deletions

View File

@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/nodes/copyfuncs.c,v 1.74 1999/02/22 19:55:42 momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/nodes/copyfuncs.c,v 1.75 1999/03/01 00:10:30 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -326,16 +326,6 @@ _copyMergeJoin(MergeJoin *from)
*/
Node_Copy(from, newnode, mergeclauses);
newnode->mergejoinop = from->mergejoinop;
newnode->mergerightorder = (Oid *) palloc(sizeof(Oid) * 2);
newnode->mergerightorder[0] = from->mergerightorder[0];
newnode->mergerightorder[1] = 0;
newnode->mergeleftorder = (Oid *) palloc(sizeof(Oid) * 2);
newnode->mergeleftorder[0] = from->mergeleftorder[0];
newnode->mergeleftorder[1] = 0;
return newnode;
}

View File

@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/nodes/Attic/freefuncs.c,v 1.14 1999/02/22 19:55:42 momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/nodes/Attic/freefuncs.c,v 1.15 1999/03/01 00:10:31 tgl Exp $
*
*-------------------------------------------------------------------------
*/
@@ -267,9 +267,6 @@ _freeMergeJoin(MergeJoin *node)
*/
freeObject(node->mergeclauses);
pfree(node->mergerightorder);
pfree(node->mergeleftorder);
pfree(node);
}

View File

@@ -5,7 +5,7 @@
*
* Copyright (c) 1994, Regents of the University of California
*
* $Id: outfuncs.c,v 1.76 1999/02/23 08:01:47 thomas Exp $
* $Id: outfuncs.c,v 1.77 1999/03/01 00:10:31 tgl Exp $
*
* NOTES
* Every (plan) node in POSTGRES has an associated "out" routine which
@@ -371,12 +371,6 @@ _outMergeJoin(StringInfo str, MergeJoin *node)
appendStringInfo(str, " :mergeclauses ");
_outNode(str, node->mergeclauses);
appendStringInfo(str,
" :mergejoinop %u :mergerightorder %u :mergeleftorder %u ",
node->mergejoinop,
node->mergerightorder,
node->mergeleftorder);
}
/*

View File

@@ -7,7 +7,7 @@
*
*
* IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/nodes/readfuncs.c,v 1.59 1999/02/18 00:49:15 momjian Exp $
* $Header: /cvsroot/pgsql/src/backend/nodes/readfuncs.c,v 1.60 1999/03/01 00:10:31 tgl Exp $
*
* NOTES
* Most of the read functions for plan nodes are tested. (In fact, they
@@ -426,10 +426,6 @@ _readMergeJoin()
token = lsptok(NULL, &length); /* eat :mergeclauses */
local_node->mergeclauses = nodeRead(true); /* now read it */
token = lsptok(NULL, &length); /* eat :mergejoinop */
token = lsptok(NULL, &length); /* get mergejoinop */
local_node->mergejoinop = atol(token);
return local_node;
}