Improve C comment about why we return "0 0" for some tags.

This commit is contained in:
Bruce Momjian 2010-02-13 22:45:41 +00:00
parent 7507b193bc
commit bbdf72b095
1 changed files with 9 additions and 4 deletions

View File

@ -8,7 +8,7 @@
*
*
* IDENTIFICATION
* $PostgreSQL: pgsql/src/backend/tcop/pquery.c,v 1.134 2010/01/02 16:57:52 momjian Exp $
* $PostgreSQL: pgsql/src/backend/tcop/pquery.c,v 1.135 2010/02/13 22:45:41 momjian Exp $
*
*-------------------------------------------------------------------------
*/
@ -1318,9 +1318,14 @@ PortalRunMulti(Portal portal, bool isTopLevel,
* If a command completion tag was supplied, use it. Otherwise use the
* portal's commandTag as the default completion tag.
*
* Exception: clients will expect INSERT/UPDATE/DELETE tags to have
* counts, so fake something up if necessary. (This could happen if the
* original query was replaced by a DO INSTEAD rule.)
* Exception: Clients expect INSERT/UPDATE/DELETE tags to have
* counts, so fake them with zeros. This can happen with DO INSTEAD
* rules if there is no replacement query of the same type as the
* original. We print "0 0" here because technically there is no
* query of the matching tag type, and printing a non-zero count for
* a different query type seems wrong, e.g. an INSERT that does
* an UPDATE instead should not print "0 1" if one row
* was updated. See QueryRewrite(), step 3, for details.
*/
if (completionTag && completionTag[0] == '\0')
{