Re: BUG #16309: Postgres's ISO 8601 date output is not compliant - Mailing list pgsql-bugs

From David G. Johnston
Subject Re: BUG #16309: Postgres's ISO 8601 date output is not compliant
Date
Msg-id CAKFQuwbpvbK4UUO9kYGm=PTLywHHi2-5s5dqBSau+Lrnu=GD-Q@mail.gmail.com
Whole thread Raw
In response to BUG #16309: Postgres's ISO 8601 date output is not compliant  (PG Bug reporting form <noreply@postgresql.org>)
List pgsql-bugs
On Friday, March 20, 2020, PG Bug reporting form <noreply@postgresql.org> wrote:
The following bug has been logged on the website:

Bug reference:      16309
Logged by:          Charlie Hayes
Email address:      cosmotic@gmail.com
PostgreSQL version: 11.6
Operating system:   docker
Description:       

Per Postgres's own documentation, ISO 8601 date output is NOT compliant
(Despite what the style name suggests):
https://www.postgresql.org/docs/12/datatype-datetime.html#DATATYPE-DATETIME-OUTPUT

The existing "Style Specification" name should be changed to something other
than ISO since it is NOT ISO compliant.

Not going to happen.  The value in the column is the literal value to assign to the DateStyle GUC.

If the output from postgres cannot be parsed by a strictly ISO 8601 parser,
than it should not be considered an ISO 8601 string.

Fair point but its close enough for data interchange purposes.  We, like most systems, are prepared to handle values with and without the “T”.
 
A new style should be create that is actually ISO compliant.

Doesn't seem worthwhile. We conform to RFC3339 for our output and while we are stuck with a problematic name there is little apparent demand for including a strict ISO 8901 format output option since RFC3339 provides sufficient interoperability.  And there is an unideal but doable alternative via to_char().

David J.

pgsql-bugs by date:

Previous
From: PG Bug reporting form
Date:
Subject: BUG #16309: Postgres's ISO 8601 date output is not compliant
Next
From: Tom Lane
Date:
Subject: Re: BUG #16040: PL/PGSQL RETURN QUERY statement never uses a parallel plan