| From: | Konstantin Knizhnik <k(dot)knizhnik(at)postgrespro(dot)ru> | 
|---|---|
| To: | PostgreSQL Hackers <pgsql-hackers(at)postgresql(dot)org> | 
| Subject: | now() vs transaction_timestamp() | 
| Date: | 2018-10-05 13:29:28 | 
| Message-ID: | 6406dbd2-5d37-4cb6-6eb2-9c44172c7e7c@postgrespro.ru | 
| Views: | Whole Thread | Raw Message | Download mbox | Resend email | 
| Thread: | |
| Lists: | pgsql-hackers | 
Postgres documentation says that |"now()| is a traditional PostgreSQL 
equivalent to |transaction_timestamp()|".
Also both use the same implementation.
But them have different parallel safety property:
postgres=# \df+ now
List of functions
    Schema   | Name |     Result data type     | Argument data types | 
Type | Volatility |  Parallel  |  Owner   | Security | Access privileges 
| Language |
  Source code |       Description
------------+------+--------------------------+---------------------+------+------------+------------+----------+----------+-------------------+----------+
-------------+--------------------------
  pg_catalog | now  | timestamp with time zone | | func | stable     | 
restricted | knizhnik | invoker |                   | internal |
  now         | current transaction time
(1 row)
postgres=# \df+ transaction_timestamp
List of functions
    Schema   |         Name          |     Result data type     | 
Argument data types | Type | Volatility | Parallel |  Owner   | Security 
| Access privileg
es | Language | Source code |       Description
------------+-----------------------+--------------------------+---------------------+------+------------+----------+----------+----------+----------------
---+----------+-------------+--------------------------
  pg_catalog | transaction_timestamp | timestamp with time zone 
|                     | func | stable     | safe     | knizhnik | 
invoker  |
    | internal | now         | current transaction time
(1 row)
As a result using now() in query disable parallel execution while 
transaction_timestamp allows it.
Was it done intentionally or it is just a bug?
-- 
Konstantin Knizhnik
Postgres Professional: http://www.postgrespro.com
The Russian Postgres Company
| From | Date | Subject | |
|---|---|---|---|
| Next Message | Andrew Dunstan | 2018-10-05 13:31:18 | Re: Relax transactional restrictions on ALTER ENUM ... ADD TYPE (redux) | 
| Previous Message | Peter Eisentraut | 2018-10-05 13:26:27 | Re: automatic restore point |