Re: transaction_timestamp() - Mailing list pgsql-admin

From Kevin Grittner
Subject Re: transaction_timestamp()
Date
Msg-id 4BFBC5B90200002500031A5E@gw.wicourts.gov
Whole thread Raw
In response to Re: transaction_timestamp()  (Samuel Stearns <SStearns@internode.com.au>)
Responses Re: transaction_timestamp()  (Samuel Stearns <SStearns@internode.com.au>)
List pgsql-admin
Samuel Stearns <SStearns@internode.com.au> wrote:
> Tom Lane <tgl@sss.pgh.pa.us> wrote:

>> transaction_timestamp() is exactly the same thing as now().

> I got into trouble using now() before.

Using what?  What kind of trouble?

> Transaction_timestamp() is really what I need, I think.

test=# \x
Expanded display is on.
test=# begin;
BEGIN
test=# select now(), current_timestamp, transaction_timestamp();
-[ RECORD 1 ]---------+------------------------------
now                   | 2010-05-25 12:41:34.365224-05
now                   | 2010-05-25 12:41:34.365224-05
transaction_timestamp | 2010-05-25 12:41:34.365224-05

[wait ten seconds or so...]

test=# select now(), current_timestamp, transaction_timestamp();
-[ RECORD 1 ]---------+------------------------------
now                   | 2010-05-25 12:41:34.365224-05
now                   | 2010-05-25 12:41:34.365224-05
transaction_timestamp | 2010-05-25 12:41:34.365224-05

test=# commit;
COMMIT
test=# select now(), current_timestamp, transaction_timestamp();
-[ RECORD 1 ]---------+------------------------------
now                   | 2010-05-25 12:41:50.765224-05
now                   | 2010-05-25 12:41:50.765224-05
transaction_timestamp | 2010-05-25 12:41:50.765224-05

> BEGIN;
> INSERT INTO blah_archive (id, user) SELECT id, user FROM blah
> where date < (now() - '30 days'::interval);
> DELETE FROM blah where date < (now() - '30 days'::interval);
> END;
>
> The now() on the INSERT will be a different time than the now() on
> the DELETE

What makes you think that?

-Kevin

pgsql-admin by date:

Previous
From: Ian Lea
Date:
Subject: Re: Quickest command to dump and restore the database? : pg_dump and pg_restore? using PostgreSQL 8.3 running on RedHat 5.3
Next
From: Balkrishna Sharma
Date:
Subject: How to find if a SELECT is reading from buffer or disk ?