From e69785debfcca308a5999946bbf4cfefd0ab5e3c Mon Sep 17 00:00:00 2001 From: Tom Lane Date: Fri, 10 Jan 2003 21:08:15 +0000 Subject: 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. --- src/backend/nodes/outfuncs.c | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'src/backend/nodes/outfuncs.c') 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); -- cgit v1.2.3