Fix an omission in the outfuncs.c support for Agg nodes: the grpColIdx
authorNeil Conway <neilc@samurai.com>
Wed, 9 Jan 2008 08:46:44 +0000 (08:46 +0000)
committerNeil Conway <neilc@samurai.com>
Wed, 9 Jan 2008 08:46:44 +0000 (08:46 +0000)
and grpOperators fields were not emitted by _outAgg().

src/backend/nodes/outfuncs.c

index 41c620686d214c278703a7727c439ab2d52923f9..2f5b1a924e09e7fd6865a381c48bd43f1cc2dae1 100644 (file)
@@ -501,12 +501,23 @@ _outHashJoin(StringInfo str, HashJoin *node)
 static void
 _outAgg(StringInfo str, Agg *node)
 {
+       int i;
+
        WRITE_NODE_TYPE("AGG");
 
        _outPlanInfo(str, (Plan *) node);
 
        WRITE_ENUM_FIELD(aggstrategy, AggStrategy);
        WRITE_INT_FIELD(numCols);
+
+       appendStringInfo(str, " :grpColIdx");
+       for (i = 0; i < node->numCols; i++)
+               appendStringInfo(str, " %d", node->grpColIdx[i]);
+
+       appendStringInfo(str, " :grpOperators");
+       for (i = 0; i < node->numCols; i++)
+               appendStringInfo(str, " %u", node->grpOperators[i]);
+
        WRITE_LONG_FIELD(numGroups);
 }