Thread: pgsql-server/src backend/bootstrap/bootstrap.c ...

pgsql-server/src backend/bootstrap/bootstrap.c ...

From
tgl@postgresql.org (Tom Lane)
Date:
CVSROOT:    /cvsroot
Module name:    pgsql-server
Changes by:    tgl@postgresql.org    02/12/15 11:18:00

Modified files:
    src/backend/bootstrap: bootstrap.c
    src/backend/catalog: index.c
    src/backend/commands: copy.c explain.c indexcmds.c portalcmds.c
                          prepare.c tablecmds.c typecmds.c vacuum.c
    src/backend/executor: README execMain.c execQual.c execUtils.c
                          functions.c nodeAgg.c nodeFunctionscan.c
                          nodeGroup.c nodeHash.c nodeHashjoin.c
                          nodeIndexscan.c nodeLimit.c nodeMaterial.c
                          nodeMergejoin.c nodeNestloop.c
                          nodeResult.c nodeSeqscan.c nodeSetOp.c
                          nodeSort.c nodeSubplan.c
                          nodeSubqueryscan.c nodeTidscan.c
                          nodeUnique.c spi.c
    src/backend/optimizer/path: indxpath.c
    src/backend/optimizer/util: clauses.c
    src/backend/tcop: pquery.c
    src/include/executor: execdesc.h executor.h
    src/include/nodes: execnodes.h
    src/pl/plpgsql/src: pl_exec.c plpgsql.h

Log message:
    Revise executor APIs so that all per-query state structure is built in
    a per-query memory context created by CreateExecutorState --- and destroyed
    by FreeExecutorState.  This provides a final solution to the longstanding
    problem of memory leaked by various ExecEndNode calls.