Clean up the API for DestReceiver objects by eliminating the assumption
authorTom Lane <tgl@sss.pgh.pa.us>
Sun, 30 Nov 2008 20:51:25 +0000 (20:51 +0000)
committerTom Lane <tgl@sss.pgh.pa.us>
Sun, 30 Nov 2008 20:51:25 +0000 (20:51 +0000)
commit5b763fe961568f8c1e3ca5a0a17554c0a5379e59
treee0fe9546a0d9022a739346912d0f766239e70edf
parent9943c0e10996bdf9fe96e6bd0051123c6a52cb92
Clean up the API for DestReceiver objects by eliminating the assumption
that a Portal is a useful and sufficient additional argument for
CreateDestReceiver --- it just isn't, in most cases.  Instead formalize
the approach of passing any needed parameters to the receiver separately.

One unexpected benefit of this change is that we can declare typedef Portal
in a less surprising location.

This patch is just code rearrangement and doesn't change any functionality.
I'll tackle the HOLD-cursor-vs-toast problem in a follow-on patch.
14 files changed:
src/backend/access/common/printtup.c
src/backend/commands/copy.c
src/backend/commands/portalcmds.c
src/backend/executor/execMain.c
src/backend/executor/functions.c
src/backend/executor/spi.c
src/backend/executor/tstoreReceiver.c
src/backend/tcop/dest.c
src/backend/tcop/postgres.c
src/backend/tcop/pquery.c
src/include/access/printtup.h
src/include/executor/tstoreReceiver.h
src/include/tcop/dest.h
src/include/utils/portal.h