Re: how to get id of currently executed query?

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: depesz(at)depesz(dot)com
Cc: Decibel! <decibel(at)decibel(dot)org>, pgsql-general(at)postgresql(dot)org
Subject: Re: how to get id of currently executed query?
Date: 2007-08-16 15:20:30
Message-ID: 4114.1187277630@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general

hubert depesz lubaczewski <depesz(at)depesz(dot)com> writes:
> so - as you can see in one query, the value changes in plpgsql. and i need some
> id that will be unchanged within one end-user-supplied query.

AFAIR, the only state that's guaranteed to work like that is
statement_timestamp. Of course you have to worry whether your machine
is fast enough to do more than one client interaction within whatever
the clock resolution is.

I think the real question here is why you want this behavior at all;
to me it smells of not having thought the problem through correctly.
As an example of why this bothers me: what if the user's query is
rewritten into several queries by a RULE? Should you consider each
of those to be a separate user-issued SQL command? Does your answer
change if you know that the user himself prepared the RULE? (Do you
think users will be happy if statement X followed by statement Y
acts differently in a rule than elsewhere?)

regards, tom lane

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message madhtr 2007-08-16 15:21:45 Re: pqlib in c++: PQconnectStart PQconnectPoll
Previous Message Rainer Bauer 2007-08-16 15:20:13 Re: Yet Another COUNT(*)...WHERE...question