Bug in TimestampUtils.java? - Mailing list pgsql-jdbc

From Richard Cook
Subject Bug in TimestampUtils.java?
Date
Msg-id 20061109201629.17691.qmail@web60221.mail.yahoo.com
Whole thread Raw
Responses Re: Bug in TimestampUtils.java?
List pgsql-jdbc
Hi All,

I recently ran into a problem that was partially caused by some behaviour I found in TimestampUtils.java.  To me it does not seem right...

I retrieved a Timestamp Column from Postgres as a Date. The data in the database had a timezone of GMT -0500, the current time was also in GMT -0500. If you look at the date that is returned from resultSet.getDate() on a Timestamp column, the timezone for the Date object is -0400. I would think that it should be -0500.

Here is some sample code that illustrates the bug. Because TimestampUtils does not have a public construct I made my own public class from the source, to use in this example...

Thanks,
Rich


TODAY: 2006-11-09 15:06:31 -0500
Date String: 2006-10-29 23:00:00-05
Parsed date '2006-10-29 23:00:00-05' in zone America/New_York as 2006-10-29 AD 00:00:00 -0400 (millis=1162094400000)
Converted Date: 2006-10-29 00:00:00 -0400


TimestampUtils utils = new TimestampUtils(true);
       
        SimpleDateFormat formatter = new SimpleDateFormat(
        "yyyy-MM-dd HH:mm:ss Z");
      
        Date theTime;
        try {
           
            System.out.println("TODAY: " + formatter.format(new Date()));
            String dateString = "2006-10-29 23:00:00-05";
            System.out.println("Date String: " + dateString);
            theTime = utils.toDate(null,dateString);
            System.out.println("Converted Date: " + formatter.format(theTime));
           
        } catch (SQLException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
        }

pgsql-jdbc by date:

Previous
From: "Heikki Linnakangas"
Date:
Subject: Re: XA end then join fix for WebLogic
Next
From: imad
Date:
Subject: Re: Bug in TimestampUtils.java?