agora inbox for pljava-dev@postgresql.org  
help / color / mirror / Atom feed
Subject: [Pljava-dev] Has ResultSet.getDate() correct handling DayLight saving time?
Date: Fri, 31 Mar 2006 07:39:30 +0200
Message-ID: <442CC092.4070101@tada.se> (raw)
In-Reply-To: <ce6becd90603301840j1b423bedwd3bee51555620eb6@mail.gmail.com>
References: <ce6becd90603301204p4ad121dcna667b89621661b17@mail.gmail.com>
	<442C4595.60900@tada.se>
	<ce6becd90603301840j1b423bedwd3bee51555620eb6@mail.gmail.com>

Hi Nic,
Doh, you're right! The timezone is added correctly but I pick todays 
timezone, not the timezone of the date in question. I'll get back to you 
when that's fixed. Thanks for pointing this out (and keeping after me 
when I claimed there was no problem).

Regards,
Thomas Hallgren


Nic Nofamily wrote:
> But d.getTime() return different values when I called the same code from pljava.jdbc and postgresql.jdbc on same machine with same JVM. The diff was 3600000 msek before for pljava.
> :(   TimeZone.getDefault() at both pljava.jdbc and postgresql.jdbc equals
>  ---------
> WBR, NiC
>
> 2006/3/31, Thomas Hallgren <thomas at tada.se>:
>   
>> Hi Nic,
>> I don't think the returned date as such is incorrect. The problem occurs 
>> when you represent the date as a string. What timezone do you use when 
>> you do that? Do you simply use d.toString() ? If so, the default 
>> timezone for your JVM is incorrect and that's the source of the problem.
>>
>> Regards,
>> Thomas Hallgren
>>
>> Nic Nofamily wrote:
>>     
>>> Hi all!
>>> I have a little trouble with my pljava functions last night:(
>>> --------------
>>> here config:
>>> Java HotSpot(TM) Server VM (build 1.5.0_06-b05, mixed mode)
>>> Debian Sarge
>>> pljava 1.2.0 compiled from source
>>> postgresql 8.1.3 installed from debian backports
>>> ---------------
>>> ResultSet.getDate for  to_date('01/11/2005','DD/MM/YYYY') returns
>>> 31/10/2005 for pljava jdbc driver
>>> the same java code using postgresql jdbc driver works  fine:(
>>>
>>> I discovered that wrong result depend on DayLight Saving time
>>> and i wrote workaround on ObjectResultSet.getDate()
>>>
>>> 	public Date getDate(int columnIndex)
>>> 	throws SQLException
>>> 	{
>>> 		Date d = (Date)this.getValue(columnIndex,Date.class);
>>> 		if(!java.util.TimeZone.getDefault().inDaylightTime(d)){
>>>                     d = new
>>>
>>>       
>> java.sql.Date(d.getTime()+java.util.TimeZone.getDefault().getDSTSavings());
>>     
>>>                 }
>>> 		return d;
>>> 	}
>>>
>>> now my pljava code works good, but that's wrong way:(
>>> What are you comments, developers?:)
>>> PS: sorry for my English,I am Russian:)
>>> _______________________________________________
>>> Pljava-dev mailing list
>>> Pljava-dev at gborg.postgresql.org
>>> http://gborg.postgresql.org/mailman/listinfo/pljava-dev
>>>   
>>>       
>>     
> _______________________________________________
> Pljava-dev mailing list
> Pljava-dev at gborg.postgresql.org
> http://gborg.postgresql.org/mailman/listinfo/pljava-dev
>   





view thread (5+ messages)

Message-ID: <442CC092.4070101@tada.se>
Permalink:  ../442CC092.4070101@tada.se/
Also on:    postgresql.org/message-id/442CC092.4070101@tada.se

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pljava-dev@postgresql.org
  Subject: Re: [Pljava-dev] Has ResultSet.getDate() correct handling DayLight saving time?
  In-Reply-To: <442CC092.4070101@tada.se>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by agora; see mirroring instructions
for how to clone and mirror all data and code used for this inbox