Re: transction_timestamp() inside of procedures

Поиск
Список
Период
Сортировка
От Andres Freund
Тема Re: transction_timestamp() inside of procedures
Дата
Msg-id 20180925215002.lswusijvntmbc46y@alap3.anarazel.de
обсуждение исходный текст
Ответ на transction_timestamp() inside of procedures  (Bruce Momjian <bruce@momjian.us>)
Ответы Re: transction_timestamp() inside of procedures  (Andres Freund <andres@anarazel.de>)
Список pgsql-hackers
Hi,

On 2018-09-20 19:40:40 -0400, Bruce Momjian wrote:
> This function shows that only clock_timestamp() advances inside a
> procedure, not statement_timestamp() or transaction_timestamp():
> 
>     CREATE OR REPLACE PROCEDURE test_timestamp () AS $$
>     DECLARE
>             str TEXT;
>     BEGIN
>             WHILE TRUE LOOP
>                     -- clock_timestamp() is updated on every loop
>                     SELECT clock_timestamp() INTO str;
>                     RAISE NOTICE 'clock       %', str;
>                     SELECT statement_timestamp() INTO str;
>                     RAISE NOTICE 'statement   %', str;
>                     SELECT transaction_timestamp() INTO str;
>                     RAISE NOTICE 'transaction %', str;
>                     COMMIT;
>     
>                     PERFORM pg_sleep(2);
>             END LOOP;
>     END
>     $$ LANGUAGE plpgsql;
> 
>     CALL test_timestamp();
>     NOTICE:  clock       2018-09-20 19:38:22.575794-04
>     NOTICE:  statement   2018-09-20 19:38:22.575685-04
>     NOTICE:  transaction 2018-09-20 19:38:22.575685-04
> 
> -->    NOTICE:  clock       2018-09-20 19:38:24.578027-04
>     NOTICE:  statement   2018-09-20 19:38:22.575685-04
>     NOTICE:  transaction 2018-09-20 19:38:22.575685-04
> 
> This surprised me since I expected a new timestamp after commit.  Is
> this something we want to change or document?  Are there other
> per-transaction behaviors we should adjust?

ISTM this is an issue that belongs on the open items list. Peter, could
you comment?

Greetings,

Andres Freund


В списке pgsql-hackers по дате отправления:

Предыдущее
От: Chapman Flack
Дата:
Сообщение: clarify documentation of BGW_NEVER_RESTART ?
Следующее
От: Saheed Bolarinwa
Дата:
Сообщение: Please, can I be a mentor for Google Code In