Thread: BUG #8672: pg_sleep function doesn't work as expected

BUG #8672: pg_sleep function doesn't work as expected

From
christophe.nicolas@9online.fr
Date:
The following bug has been logged on the website:

Bug reference:      8672
Logged by:          M CHRISTOPHE NICOLAS
Email address:      christophe.nicolas@9online.fr
PostgreSQL version: 9.2.2
Operating system:   Windows Seven
Description:

A simple example :


Create Table tst_sleep(instime timestamp);


Do '
Begin
  Insert Into tst_sleep values(Now());
  Perform pg_sleep(5);
  Insert Into tst_sleep values(Now());
End;
'


Select * From tst_sleep;
2013-12-09 09:23:54.012
2013-12-09 09:23:54.012




=> The Do execution last 5 secondes (ok), but the 2 rows are inserted as
same time.

Re: BUG #8672: pg_sleep function doesn't work as expected

From
Pavel Stehule
Date:
Hello

it is not bug

Function now() doesn't show real time - it returns a start of transaction
time

see

begin;
  select now();
  -- wait some time
  select now();
rollback;

probably you would to use clock_timestamp() function

http://www.postgresql.org/docs/9.1/static/functions-datetime.html

Regards

Pavel Stehule


2013/12/9 <christophe.nicolas@9online.fr>

> The following bug has been logged on the website:
>
> Bug reference:      8672
> Logged by:          M CHRISTOPHE NICOLAS
> Email address:      christophe.nicolas@9online.fr
> PostgreSQL version: 9.2.2
> Operating system:   Windows Seven
> Description:
>
> A simple example :
>
>
> Create Table tst_sleep(instime timestamp);
>
>
> Do '
> Begin
>   Insert Into tst_sleep values(Now());
>   Perform pg_sleep(5);
>   Insert Into tst_sleep values(Now());
> End;
> '
>
>
> Select * From tst_sleep;
> 2013-12-09 09:23:54.012
> 2013-12-09 09:23:54.012
>
>
>
>
> => The Do execution last 5 secondes (ok), but the 2 rows are inserted as
> same time.
>
>
>
>
> --
> Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
> To make changes to your subscription:
> http://www.postgresql.org/mailpref/pgsql-bugs
>