Re: BUG #1630: Wrong conversion in to_date() function. See

Karel Zak <zakkr@zf.jcu.cz>

From: Karel Zak <zakkr@zf.jcu.cz>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: Michael Fuhr <mike@fuhr.org>, "Ariel E." Carná/Elizabeth Sosa <acarna@tarifar.com>, pgsql-bugs@postgresql.org
Date: 2005-05-02T20:33:40Z
Lists: pgsql-bugs
On Wed, 2005-04-27 at 10:53 -0400, Tom Lane wrote:
> Michael Fuhr <mike@fuhr.org> writes:
> > If anything I'd expect 2005-02-32 to be rejected as invalid, but I
> > don't know the history or rationale behind to_date's behavior.
> 
> It is rejected by the standard date input converter:
> 
> regression=# select '2005-02-32'::date;
> ERROR:  date/time field value out of range: "2005-02-32"
> HINT:  Perhaps you need a different "datestyle" setting.
> 
> However we consider that to_date() exists to be Oracle compatible,
> and so I would regard this as a bug if and only if Oracle does
> something different with the same input.  Anyone know?

It's "almost" bug. And it's in TODO (but it's really long todo..:-( I
think to_date/timestamp() should be more pedantic.

	Karel

PS. for volunteers for the work on new generation of to_char/date():
http://people.redhat.com/kzak/libfmt/libfmt-0.2-03262005.tar.gz

-- 
Karel Zak <zakkr@zf.jcu.cz>