Rip out QueryTreeList structure, root and branch. Querytree
authorTom Lane <tgl@sss.pgh.pa.us>
Thu, 13 May 1999 07:29:22 +0000 (07:29 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Thu, 13 May 1999 07:29:22 +0000 (07:29 +0000)
commitb02cdd4e42405f418b61b27cbd5831d6fdac8279
tree05cdbee891e5b78cedcce335946e992730c4eeb1
parent3d7796db938d75d74982b415c8e3db5891f43f3d
Rip out QueryTreeList structure, root and branch.  Querytree
lists are now plain old garden-variety Lists, allocated with palloc,
rather than specialized expansible-array data allocated with malloc.
This substantially simplifies their handling and eliminates several
sources of memory leakage.
Several basic types of erroneous queries (syntax error, attempt to
insert a duplicate key into a unique index) now demonstrably leak
zero bytes per query.
18 files changed:
doc/src/sgml/arch-dev.sgml
src/backend/catalog/heap.c
src/backend/catalog/pg_proc.c
src/backend/executor/functions.c
src/backend/executor/spi.c
src/backend/optimizer/plan/planner.c
src/backend/parser/analyze.c
src/backend/parser/parse_clause.c
src/backend/parser/parse_expr.c
src/backend/parser/parser.c
src/backend/rewrite/rewriteHandler.c
src/backend/tcop/postgres.c
src/include/executor/spi_priv.h
src/include/optimizer/planner.h
src/include/parser/analyze.h
src/include/parser/parse_node.h
src/include/parser/parser.h
src/include/tcop/tcopprot.h