aboutsummaryrefslogtreecommitdiff
path: root/src/backend/nodes/outfuncs.c
diff options
context:
space:
mode:
authorTom Lane <tgl@sss.pgh.pa.us>2003-01-10 21:08:15 +0000
committerTom Lane <tgl@sss.pgh.pa.us>2003-01-10 21:08:15 +0000
commite69785debfcca308a5999946bbf4cfefd0ab5e3c (patch)
tree067093f426b8034288590a71f538650b3c53d485 /src/backend/nodes/outfuncs.c
parent36ea26793a14d016059de2f1c83a05cf87a8bb92 (diff)
downloadpostgresql-e69785debfcca308a5999946bbf4cfefd0ab5e3c.tar.gz
postgresql-e69785debfcca308a5999946bbf4cfefd0ab5e3c.zip
Further tweaking of parsetree & plantree representation of SubLinks.
Simplify SubLink by storing just a List of operator OIDs, instead of a list of incomplete OpExprs --- that was a bizarre and bulky choice, with no redeeming social value since we have to build new OpExprs anyway when forming the plan tree.
Diffstat (limited to 'src/backend/nodes/outfuncs.c')
-rw-r--r--src/backend/nodes/outfuncs.c11
1 files changed, 7 insertions, 4 deletions
diff --git a/src/backend/nodes/outfuncs.c b/src/backend/nodes/outfuncs.c
index 204c00ad674..e7d8fa71ed7 100644
--- a/src/backend/nodes/outfuncs.c
+++ b/src/backend/nodes/outfuncs.c
@@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
- * $Header: /cvsroot/pgsql/src/backend/nodes/outfuncs.c,v 1.191 2003/01/09 20:50:50 tgl Exp $
+ * $Header: /cvsroot/pgsql/src/backend/nodes/outfuncs.c,v 1.192 2003/01/10 21:08:11 tgl Exp $
*
* NOTES
* Every node type that can appear in stored rules' parsetrees *must*
@@ -658,10 +658,10 @@ _outSubLink(StringInfo str, SubLink *node)
WRITE_NODE_TYPE("SUBLINK");
WRITE_ENUM_FIELD(subLinkType, SubLinkType);
- WRITE_BOOL_FIELD(operIsEquals);
WRITE_BOOL_FIELD(useOr);
WRITE_NODE_FIELD(lefthand);
- WRITE_NODE_FIELD(oper);
+ WRITE_NODE_FIELD(operName);
+ WRITE_INTLIST_FIELD(operOids);
WRITE_NODE_FIELD(subselect);
}
@@ -672,10 +672,13 @@ _outSubPlan(StringInfo str, SubPlan *node)
WRITE_ENUM_FIELD(subLinkType, SubLinkType);
WRITE_BOOL_FIELD(useOr);
- WRITE_NODE_FIELD(oper);
+ WRITE_NODE_FIELD(exprs);
+ WRITE_INTLIST_FIELD(paramIds);
WRITE_NODE_FIELD(plan);
WRITE_INT_FIELD(plan_id);
WRITE_NODE_FIELD(rtable);
+ WRITE_BOOL_FIELD(useHashTable);
+ WRITE_BOOL_FIELD(unknownEqFalse);
WRITE_INTLIST_FIELD(setParam);
WRITE_INTLIST_FIELD(parParam);
WRITE_NODE_FIELD(args);