diff options
Diffstat (limited to 'src/backend/nodes')
| -rw-r--r-- | src/backend/nodes/copyfuncs.c | 4 | ||||
| -rw-r--r-- | src/backend/nodes/equalfuncs.c | 6 | ||||
| -rw-r--r-- | src/backend/nodes/outfuncs.c | 11 | ||||
| -rw-r--r-- | src/backend/nodes/readfuncs.c | 10 |
4 files changed, 24 insertions, 7 deletions
diff --git a/src/backend/nodes/copyfuncs.c b/src/backend/nodes/copyfuncs.c index 1b2726f822..884926b9b6 100644 --- a/src/backend/nodes/copyfuncs.c +++ b/src/backend/nodes/copyfuncs.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/nodes/copyfuncs.c,v 1.97 1999/11/23 20:06:52 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/nodes/copyfuncs.c,v 1.98 1999/12/13 01:26:53 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -832,6 +832,8 @@ _copyAggref(Aggref *from) newnode->aggtype = from->aggtype; Node_Copy(from, newnode, target); newnode->usenulls = from->usenulls; + newnode->aggstar = from->aggstar; + newnode->aggdistinct = from->aggdistinct; newnode->aggno = from->aggno; /* probably not needed */ return newnode; diff --git a/src/backend/nodes/equalfuncs.c b/src/backend/nodes/equalfuncs.c index b35b271275..f70fe508ae 100644 --- a/src/backend/nodes/equalfuncs.c +++ b/src/backend/nodes/equalfuncs.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/nodes/equalfuncs.c,v 1.52 1999/11/23 20:06:52 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/nodes/equalfuncs.c,v 1.53 1999/12/13 01:26:53 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -219,6 +219,10 @@ _equalAggref(Aggref *a, Aggref *b) return false; if (a->usenulls != b->usenulls) return false; + if (a->aggstar != b->aggstar) + return false; + if (a->aggdistinct != b->aggdistinct) + return false; /* ignore aggno, which is only a private field for the executor */ return true; } diff --git a/src/backend/nodes/outfuncs.c b/src/backend/nodes/outfuncs.c index 78bda61b30..7907f1b62e 100644 --- a/src/backend/nodes/outfuncs.c +++ b/src/backend/nodes/outfuncs.c @@ -5,7 +5,7 @@ * * Copyright (c) 1994, Regents of the University of California * - * $Id: outfuncs.c,v 1.99 1999/12/10 07:37:31 tgl Exp $ + * $Id: outfuncs.c,v 1.100 1999/12/13 01:26:53 tgl Exp $ * * NOTES * Every (plan) node in POSTGRES has an associated "out" routine which @@ -680,14 +680,17 @@ static void _outAggref(StringInfo str, Aggref *node) { appendStringInfo(str, - " AGGREG :aggname %s :basetype %u :aggtype %u :target ", + " AGGREG :aggname %s :basetype %u :aggtype %u :target ", stringStringInfo(node->aggname), node->basetype, node->aggtype); _outNode(str, node->target); - appendStringInfo(str, " :usenulls %s ", - node->usenulls ? "true" : "false"); + appendStringInfo(str, " :usenulls %s :aggstar %s :aggdistinct %s ", + node->usenulls ? "true" : "false", + node->aggstar ? "true" : "false", + node->aggdistinct ? "true" : "false"); + /* aggno is not dumped */ } /* diff --git a/src/backend/nodes/readfuncs.c b/src/backend/nodes/readfuncs.c index 99be5199fa..83683ff3b1 100644 --- a/src/backend/nodes/readfuncs.c +++ b/src/backend/nodes/readfuncs.c @@ -7,7 +7,7 @@ * * * IDENTIFICATION - * $Header: /cvsroot/pgsql/src/backend/nodes/readfuncs.c,v 1.75 1999/11/23 20:06:53 momjian Exp $ + * $Header: /cvsroot/pgsql/src/backend/nodes/readfuncs.c,v 1.76 1999/12/13 01:26:54 tgl Exp $ * * NOTES * Most of the read functions for plan nodes are tested. (In fact, they @@ -1190,6 +1190,14 @@ _readAggref() token = lsptok(NULL, &length); /* get usenulls */ local_node->usenulls = (token[0] == 't') ? true : false; + token = lsptok(NULL, &length); /* eat :aggstar */ + token = lsptok(NULL, &length); /* get aggstar */ + local_node->aggstar = (token[0] == 't') ? true : false; + + token = lsptok(NULL, &length); /* eat :aggdistinct */ + token = lsptok(NULL, &length); /* get aggdistinct */ + local_node->aggdistinct = (token[0] == 't') ? true : false; + return local_node; } |
