Thread

  1. Validation in to_date()

    Hitoshi Harada <umi.tanuki@gmail.com> — 2013-01-12T06:28:15Z

    to_date() doesn't check the date range, which results in unreadable
    data like this.
    
    foo=# create table t as select to_date('9999-12-10 BC', 'YYYY-MM-DD
    BC')::timestamp;
    SELECT 1
    foo=# table t;
    ERROR:  timestamp out of range
    
    Attached is to add IS_VALID_JULIAN() as we do like in date_in().  I
    think to_date() should follow it because it is the entrance place to
    check sanity.
    
    Thanks,
    -- 
    Hitoshi Harada
    
  2. Re: Validation in to_date()

    Tom Lane <tgl@sss.pgh.pa.us> — 2013-01-14T20:14:41Z

    Hitoshi Harada <umi.tanuki@gmail.com> writes:
    > to_date() doesn't check the date range, which results in unreadable
    > data like this.
    
    > foo=# create table t as select to_date('9999-12-10 BC', 'YYYY-MM-DD
    > BC')::timestamp;
    > SELECT 1
    > foo=# table t;
    > ERROR:  timestamp out of range
    
    > Attached is to add IS_VALID_JULIAN() as we do like in date_in().  I
    > think to_date() should follow it because it is the entrance place to
    > check sanity.
    
    This looks like a good idea, will commit.
    
    			regards, tom lane