Re: Bug #651: Time difference of 30 in while reading in timestamp

From: R Ravishankar <rravishankar(at)sify(dot)com>
To: Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>, rravishankar(at)sify(dot)com, pgsql-bugs(at)postgresql(dot)org
Subject: Re: Bug #651: Time difference of 30 in while reading in timestamp
Date: 2002-05-07 05:29:00
Message-ID: 1020751140.3cd76d240963c@webmail4.maa.sify.net
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-bugs

Is it safe to assume that this difference of 30 mins would be consistent even if our implementation in used across different timezones ?

Moreover it was found that if we retrieve the resultset as a getString instead of a getTimestamp, it returns correctly.

But the valueOf operator to convert this String into a Timestamp cannot be used as the String format returned required by valueOf and that got by resultSet.getString are not the same.

Is there any official fix for this ?

Thanks.
Ravi

R Ravishankar <rravishankar(at)sify(dot)com>:

> Actually the Timestamp class does not use Timezone. Timezone in Java 1.3
> can be set only on Calendar class objects. Timestamp inherits some
> methods from the Date class but none which concerned with setting
> timezones :-(
>
> Ravi
>
>
> Tom Lane <tgl(at)sss(dot)pgh(dot)pa(dot)us>:
>
> > pgsql-bugs(at)postgresql(dot)org writes:
> > > I am using Java 1.3.1 and Postgres 7.1.2 and am writing timestamp
> > without zone info to the database using JDBC (my zone is IST or
> > +5:30GMT). I find that there is always a time difference of 30
> minutes
> > when i read from the database.
> >
> > > When i query the postgres database from the SQL prompt, the time is
> as
> > i had written it. But when i read it from the database into my java
> code
> > it is more exactly by 30 mins.
> >
> > I assume the datatype of the table column is "timestamp"? The
> internal
> > storage is in GMT, which is converted to the timezone specified by
> your
> > current TimeZone setting whenever you SELECT the value. If it works
> in
> > psql then the database side of things seems to be okay. I suspect
> that
> > in the JDBC case, the backend's TimeZone variable is being set to
> > something different than what you think it is (either +5 or +6, not
> > 5:30). Can you try a "SET TimeZone" to set the zone explicitly
> within
> > your JDBC program, and see whether the results change?
> >
> > regards, tom lane
> >
>
> -------------------------------------------------
> Sify Mail - now with Anti-virus protection powered by Trend Micro, USA.
> Know more at http://mail.sify.com
>
> Take the shortest route to success!
> Click here to know how http://education.sify.com
>

-------------------------------------------------
Sify Mail - now with Anti-virus protection powered by Trend Micro, USA.
Know more at http://mail.sify.com

Take the shortest route to success!
Click here to know how http://education.sify.com

In response to

Responses

Browse pgsql-bugs by date

  From Date Subject
Next Message Hiroshi Inoue 2002-05-07 08:07:27 Re: Bug #657: VB DAO MoveFirst/MoveLast become invalid
Previous Message Tom Lane 2002-05-06 18:44:35 Re: Bug in functions lower(), upper() with SQL_ASCII and LATIN1?