bug with aggregates

From: Massimo Dal Zotto <dz(at)cs(dot)unitn(dot)it>
To: hackers(at)postgreSQL(dot)org (PostgreSQL Hackers)
Subject: bug with aggregates
Date: 1999-06-11 19:52:21
Message-ID: 199906111952.VAA23285@nikita.wizard.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hi,

while playing with aggregates I found this bug in the planner:

dz=> select count(1) from my_table;
pqReadData() -- backend closed the channel unexpectedly.
This probably means the backend terminated abnormally
before or while processing the request.
We have lost the connection to the backend, so further processing is impossible. Terminating.

The debugger prints the following information:

(xxgdb) cont
Program received signal SIGSEGV, Segmentation fault.
0x80d93cf in set_agg_tlist_references (aggNode=0x82a4310) at setrefs.c:765
(xxgdb) info stack
#0 0x80d93cf in set_agg_tlist_references (aggNode=0x82a4310) at setrefs.c:765
#1 0x80d80ac in union_planner (parse=0x82a40a0) at planner.c:319
#2 0x80d7d05 in planner (parse=0x82a40a0) at planner.c:83
#3 0x80fd344 in pg_parse_and_plan (query_string=0xbffef2d8 "select count(1) from my_table;", typev=0x0, nargs=0, queryListP=0xbffef268, dest=Remote, aclOverride=0 '\000') at postgres.c:590
#4 0x80fd4a3 in pg_exec_query_dest (query_string=0xbffef2d8 "select count(1) from my_table;", dest=Remote, aclOverride=0) at postgres.c:678
#5 0x80fd454 in pg_exec_query (query_string=0xbffef2d8 "select count(1) from my_table;") at postgres.c:656
#6 0x80fe6c8 in PostgresMain (argc=9, argv=0xbffff850, real_argc=6, real_argv=0xbffffd6c) at postgres.c:1658
#7 0x80e32ec in DoBackend (port=0x8235ca8) at postmaster.c:1628
(xxgdb) print *aggNode
$2 = {
plan = {
type = T_Agg,
cost = 0,
plan_size = 0,
plan_width = 0,
plan_tupperpage = 0,
state = 0x0,
targetlist = 0x82a44f8,
qual = 0x0,
lefttree = 0x0,
righttree = 0x0,
extParam = 0x0,
locParam = 0x0,
chgParam = 0x0,
initPlan = 0x0,
subPlan = 0x0,
nParamExec = 0
},
aggs = 0x0,
aggstate = 0x0
}
(xxgdb)

The problem is caused by a null plan.lefttree in set_agg_tlist_references()
(setrefs.c:765), but I don't know what it means:

subplanTargetList = aggNode->plan.lefttree->targetlist;

--
Massimo Dal Zotto

+----------------------------------------------------------------------+
| Massimo Dal Zotto email: dz(at)cs(dot)unitn(dot)it |
| Via Marconi, 141 phone: ++39-0461534251 |
| 38057 Pergine Valsugana (TN) www: http://www.cs.unitn.it/~dz/ |
| Italy pgp: finger dz(at)tango(dot)cs(dot)unitn(dot)it |
+----------------------------------------------------------------------+

Browse pgsql-hackers by date

  From Date Subject
Next Message Tom Lane 1999-06-11 21:26:25 Re: [HACKERS] Re: locales and MB (was: Postgres 6.5 beta2 and beta3 problem)
Previous Message Don Baccus 1999-06-11 19:42:04 Re: [HACKERS] "DML"