Re: ProcessUtility_hook

From: Robert Haas <robertmhaas(at)gmail(dot)com>
To: Takahiro Itagaki <itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: ProcessUtility_hook
Date: 2009-12-10 03:20:21
Message-ID: 603c8f070912091920i67dd3daas87989ea24b510d8f@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

On Wed, Dec 9, 2009 at 10:14 PM, Takahiro Itagaki
<itagaki(dot)takahiro(at)oss(dot)ntt(dot)co(dot)jp> wrote:
>> I'm confused by the "we cannot retrieve the number of rows for SELECT"
>> part.  Can you clarify that?
>
> Ah, I meant the SELECT was "EXECUTE of SELECT".
>
> If I use internal structure names, the explanation will be:
> ----
> EXECUTE command returns INSERT, UPDATE, DELETE, or SELECT tags.
> We can retrieve the number of rows from INSERT, UPDATE, and DELETE tags,
> but cannot from SELECT tag because the tag doesn't contain row numbers
> and also EState->es_processed is unavailable for EXECUTE commands.
> ----

OK, that makes sense. It might read a little better this way:

The EXECUTE command returns INSERT, UPDATE, DELETE, or SELECT tags.
We can retrieve the number of rows from INSERT, UPDATE, and DELETE tags,
but the SELECT doesn't contain row numbers. We also can't get it from
EState->es_processed, because that is unavailable for EXECUTE commands.

That seems like a rather unfortunate limitation though...

...Robert

In response to

Browse pgsql-hackers by date

  From Date Subject
Next Message Bruce Momjian 2009-12-10 03:43:23 Re: Adding support for SE-Linux security
Previous Message Takahiro Itagaki 2009-12-10 03:14:09 Re: ProcessUtility_hook