aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorMarc G. Fournier <scrappy@hub.org>1996-10-24 06:32:01 +0000
committerMarc G. Fournier <scrappy@hub.org>1996-10-24 06:32:01 +0000
commite152661200c1b3e6a834c918ba64681dde404440 (patch)
treed06fd4c9d511760fff277c683717b915d5da12ee /src
parentc471d2bdebcad002a7f867b73811b803396b793e (diff)
downloadpostgresql-e152661200c1b3e6a834c918ba64681dde404440.tar.gz
postgresql-e152661200c1b3e6a834c918ba64681dde404440.zip
Fixes:
It's bug in nodeAgg.c on lines 241, 242: null_array = malloc(nagg); for (i=0;i<nagg;i++) null_array[i] = 'n'; oneTuple = heap_formtuple(tupType, tupValue, null_array); - your query has not only aggregates but also 'group by-ed' fields and so null_array should contain tupType->natts elements (tupType->natts > nagg in your case). Patch follows and it's very simple. VAdim
Diffstat (limited to 'src')
-rw-r--r--src/backend/executor/nodeAgg.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/src/backend/executor/nodeAgg.c b/src/backend/executor/nodeAgg.c
index ee187367c74..94764bfa3ac 100644
--- a/src/backend/executor/nodeAgg.c
+++ b/src/backend/executor/nodeAgg.c
@@ -238,8 +238,8 @@ ExecAgg(Agg *node)
tupValue = projInfo->pi_tupValue;
/* initially, set all the values to NULL */
- null_array = malloc(nagg);
- for (i=0;i<nagg;i++)
+ null_array = malloc(tupType->natts);
+ for (i=0;i<tupType->natts;i++)
null_array[i] = 'n';
oneTuple = heap_formtuple(tupType, tupValue, null_array);
free(null_array);