Re: BUG #16797: EXTRACT(EPOCH FROM timestamp) is not using local timezone

From: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>
To: djburd(at)gmail(dot)com
Cc: pgsql-bugs(at)lists(dot)postgresql(dot)org
Subject: Re: BUG #16797: EXTRACT(EPOCH FROM timestamp) is not using local timezone
Date: 2020-12-30 19:01:42
Message-ID: 2396654.1609354902@sss.pgh.pa.us
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

PG Bug reporting form <noreply(at)postgresql(dot)org> writes:
> EXTRACT(EPOCH FROM timestamp) should be using the local timezone

No, type timestamp is explicitly *not* timezone aware. If you use
timestamptz (a/k/a timestamp with time zone) you will get the
answer you want.

> -- Expected results (seen from PostgreSQL 9.1.11):

> # SET TIME ZONE 'EST5EDT'; select extract(epoch from ('01/01/1970
> 00:00:00'::timestamp));

This was a bug, cf 9.2.0 release notes [1]:

Make EXTRACT(EPOCH FROM timestamp without time zone) measure the epoch
from local midnight, not UTC midnight (Tom Lane)

This change reverts an ill-considered change made in release 7.3.
Measuring from UTC midnight was inconsistent because it made the
result dependent on the timezone setting, which computations for
timestamp without time zone should not be. The previous behavior
remains available by casting the input value to timestamp with time
zone.

regards, tom lane

[1] https://www.postgresql.org/docs/release/9.2.0/

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Dana Burd 2020-12-30 21:02:30 Re: BUG #16797: EXTRACT(EPOCH FROM timestamp) is not using local timezone
Previous Message PG Bug reporting form 2020-12-30 17:10:17 BUG #16797: EXTRACT(EPOCH FROM timestamp) is not using local timezone