BUG #14558: to_timestamp() format lies about supporting timezone

Started by Jordan Gigovabout 9 years ago4 messagesbugs
Jump to latest
#1Jordan Gigov
coladict@gmail.com

The following bug has been logged on the website:

Bug reference: 14558
Logged by: Jordan Gigov
Email address: coladict@gmail.com
PostgreSQL version: 9.6.2
Operating system: irrelevant
Description:

postgres=# SELECT to_timestamp('2017-02-20 16:00:27.989808+02', 'YYYY-MM-DD
HH24:MI:SS.SSSSOF')::timestamp with time zone;
ERROR: "TZ"/"tz"/"OF" format patterns are not supported in to_date

--
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs

#2John McKown
john.archie.mckown@gmail.com
In reply to: Jordan Gigov (#1)
Re: BUG #14558: to_timestamp() format lies about supporting timezone

On Mon, Feb 20, 2017 at 8:11 AM, <coladict@gmail.com> wrote:

The following bug has been logged on the website:

Bug reference: 14558
Logged by: Jordan Gigov
Email address: coladict@gmail.com
PostgreSQL version: 9.6.2
Operating system: irrelevant
Description:

postgres=# SELECT to_timestamp('2017-02-20 16:00:27.989808+02', 'YYYY-MM-DD
HH24:MI:SS.SSSSOF')::timestamp with time zone;
ERROR: "TZ"/"tz"/"OF" format patterns are not supported in to_date

​I'm not a maintainer. Or any kind of an official "expert". But I'm
wondering if the above is really a bug. From reading the documentation on:
https://www.postgresql.org/docs/current/static/functions-datetime.html, it
seems to me to say that to_timestamp() only takes one parameter, which is a
double precision number (not a string). But the following worked well for
me:

tsh009=# SELECT '2017-02-20 16:00:27.989808+02'::timestamp;
timestamp
----------------------------
2017-02-20 16:00:27.989808
(1 row)

Or was this an enhancement request?

--
"Irrigation of the land with seawater desalinated by fusion power is
ancient. It's called 'rain'." -- Michael McClary, in alt.fusion

Maranatha! <><
John McKown

#3Tom Lane
tgl@sss.pgh.pa.us
In reply to: John McKown (#2)
Re: BUG #14558: to_timestamp() format lies about supporting timezone

John McKown <john.archie.mckown@gmail.com> writes:

On Mon, Feb 20, 2017 at 8:11 AM, <coladict@gmail.com> wrote:

postgres=# SELECT to_timestamp('2017-02-20 16:00:27.989808+02', 'YYYY-MM-DD
HH24:MI:SS.SSSSOF')::timestamp with time zone;
ERROR: "TZ"/"tz"/"OF" format patterns are not supported in to_date

I'm not a maintainer. Or any kind of an official "expert". But I'm
wondering if the above is really a bug. From reading the documentation on:
https://www.postgresql.org/docs/current/static/functions-datetime.html, it
seems to me to say that to_timestamp() only takes one parameter, which is a
double precision number (not a string).

Nah, that's the other function named to_timestamp. This one's documented
on the previous page:
https://www.postgresql.org/docs/current/static/functions-formatting.html

Or was this an enhancement request?

Possibly. I'm choosing to read it as a complaint that the limitation
is not mentioned in the documentation, which seems to be true. I'll
go fix that.

(Actually supporting TZ/tz might be a bit hard, because you'd have
to figure out how to get to_timestamp's parser to see cases like
"America/New_York" or "GMT-03" as single tokens. Possibly the
omission of OF is just a lack of round tuits.)

But the following worked well for me:
tsh009=# SELECT '2017-02-20 16:00:27.989808+02'::timestamp;

Yeah, it's remarkable how many people insist on using to_timestamp
when the regular timestamp input function would serve them as well
or better.

regards, tom lane

--
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs

#4John McKown
john.archie.mckown@gmail.com
In reply to: Tom Lane (#3)
Re: BUG #14558: to_timestamp() format lies about supporting timezone

On Mon, Feb 20, 2017 at 8:40 AM, Tom Lane <tgl@sss.pgh.pa.us> wrote:

John McKown <john.archie.mckown@gmail.com> writes:

On Mon, Feb 20, 2017 at 8:11 AM, <coladict@gmail.com> wrote:

postgres=# SELECT to_timestamp('2017-02-20 16:00:27.989808+02',

'YYYY-MM-DD

HH24:MI:SS.SSSSOF')::timestamp with time zone;
ERROR: "TZ"/"tz"/"OF" format patterns are not supported in to_date

I'm not a maintainer. Or any kind of an official "expert". But I'm
wondering if the above is really a bug. From reading the documentation

on:

https://www.postgresql.org/docs/current/static/functions-datetime.html,

it

seems to me to say that to_timestamp() only takes one parameter, which

is a

double precision number (not a string).

Nah, that's the other function named to_timestamp. This one's documented
on the previous page:
https://www.postgresql.org/docs/current/static/functions-formatting.html

​See, I told ya'll that I'm not an expert. And thus it is shown! And in a
kindly manner.​

regards, tom lane

--
"Irrigation of the land with seawater desalinated by fusion power is
ancient. It's called 'rain'." -- Michael McClary, in alt.fusion

Maranatha! <><
John McKown