diff options
author | Tom Lane <tgl@sss.pgh.pa.us> | 2008-10-31 19:37:56 +0000 |
---|---|---|
committer | Tom Lane <tgl@sss.pgh.pa.us> | 2008-10-31 19:37:56 +0000 |
commit | 9b46abb7c47de8aa408a8c83666fd67c5447eb85 (patch) | |
tree | 034991f27008de03ff71f505431b10a1b2ae5e5e /src/include/executor/functions.h | |
parent | cd97f98844b5640b1cdc701c691c962155dce3b4 (diff) | |
download | postgresql-9b46abb7c47de8aa408a8c83666fd67c5447eb85.tar.gz postgresql-9b46abb7c47de8aa408a8c83666fd67c5447eb85.zip |
Allow SQL-language functions to return the output of an INSERT/UPDATE/DELETE
RETURNING clause, not just a SELECT as formerly.
A side effect of this patch is that when a set-returning SQL function is used
in a FROM clause, performance is improved because the output is collected into
a tuplestore within the function, rather than using the less efficient
value-per-call mechanism.
Diffstat (limited to 'src/include/executor/functions.h')
-rw-r--r-- | src/include/executor/functions.h | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/include/executor/functions.h b/src/include/executor/functions.h index b5451ad43b8..61f782d18db 100644 --- a/src/include/executor/functions.h +++ b/src/include/executor/functions.h @@ -7,7 +7,7 @@ * Portions Copyright (c) 1996-2008, PostgreSQL Global Development Group * Portions Copyright (c) 1994, Regents of the University of California * - * $PostgreSQL: pgsql/src/include/executor/functions.h,v 1.31 2008/03/18 22:04:14 tgl Exp $ + * $PostgreSQL: pgsql/src/include/executor/functions.h,v 1.32 2008/10/31 19:37:56 tgl Exp $ * *------------------------------------------------------------------------- */ @@ -15,6 +15,7 @@ #define FUNCTIONS_H #include "nodes/execnodes.h" +#include "tcop/dest.h" extern Datum fmgr_sql(PG_FUNCTION_ARGS); @@ -24,4 +25,6 @@ extern bool check_sql_fn_retval(Oid func_id, Oid rettype, bool insertRelabels, JunkFilter **junkFilter); +extern DestReceiver *CreateSQLFunctionDestReceiver(void); + #endif /* FUNCTIONS_H */ |