Commit 8f6a6b7e authored by Tom Lane's avatar Tom Lane

Ensure that an Execute operation can't send tuples in cases where

Describe would claim that no tuples will be returned.  Only affects
SELECTs added to non-SELECT base queries by rewrite rules.  If you
want to see the output of such a select, you gotta use 'simple Query'
protocol.
parent 79913910
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
* *
* *
* IDENTIFICATION * IDENTIFICATION
* $Header: /cvsroot/pgsql/src/backend/tcop/pquery.c,v 1.62 2003/05/06 20:26:27 tgl Exp $ * $Header: /cvsroot/pgsql/src/backend/tcop/pquery.c,v 1.63 2003/05/06 21:01:04 tgl Exp $
* *
*------------------------------------------------------------------------- *-------------------------------------------------------------------------
*/ */
...@@ -727,6 +727,23 @@ PortalRunMulti(Portal portal, ...@@ -727,6 +727,23 @@ PortalRunMulti(Portal portal,
List *plantree_list = portal->planTrees; List *plantree_list = portal->planTrees;
List *querylist_item; List *querylist_item;
/*
* If the destination is RemoteExecute, change to None. The reason
* is that the client won't be expecting any tuples, and indeed has no
* way to know what they are, since there is no provision for Describe
* to send a RowDescription message when this portal execution strategy
* is in effect. This presently will only affect SELECT commands added
* to non-SELECT queries by rewrite rules: such commands will be executed,
* but the results will be discarded unless you use "simple Query"
* protocol.
*/
if (dest->mydest == RemoteExecute ||
dest->mydest == RemoteExecuteInternal)
dest = None_Receiver;
if (altdest->mydest == RemoteExecute ||
altdest->mydest == RemoteExecuteInternal)
altdest = None_Receiver;
/* /*
* Loop to handle the individual queries generated from a * Loop to handle the individual queries generated from a
* single parsetree by analysis and rewrite. * single parsetree by analysis and rewrite.
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment