Re: Anyway to tell jdbc to use server timezone?

From: Dave Cramer <pg(at)fastcrypt(dot)com>
To: Mikko Tiihonen <Mikko(dot)Tiihonen(at)nitorcreations(dot)com>
Cc: George Woodring <george(dot)woodring(at)iglass(dot)net>, List <pgsql-jdbc(at)postgresql(dot)org>
Subject: Re: Anyway to tell jdbc to use server timezone?
Date: 2014-11-14 17:41:17
Message-ID: CADK3HHJojNwZ9yC-Je1=q8u5m-R6FTsv96JqVtLyqB5A4jsXEQ@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-jdbc

Mikko,
What is involved in the latter ?

Dave Cramer

dave.cramer(at)credativ(dot)ca
http://www.credativ.ca

On 14 November 2014 10:04, Mikko Tiihonen <Mikko(dot)Tiihonen(at)nitorcreations(dot)com
> wrote:

> That would be an easy way to get back the old functionality.
>
>
> Fixing binary protocol to work with server side timezone and adding a
> way to choose service side timezone would be the correct long term solution.
>
>
> -Mikko
> ------------------------------
> *From:* davecramer(at)gmail(dot)com <davecramer(at)gmail(dot)com> on behalf of Dave
> Cramer <pg(at)fastcrypt(dot)com>
> *Sent:* 14 November 2014 15:48
> *To:* George Woodring
> *Cc:* Mikko Tiihonen; List
>
> *Subject:* Re: [JDBC] Anyway to tell jdbc to use server timezone?
>
> George,
>
> Looking at the reason it was put in there, this is for the binary
> protocol. I think you may be able to get away with removing it if you
> disable binary protocol for timestamps.
>
> Mikko ?
>
> Dave
>
> Dave Cramer
>
> dave.cramer(at)credativ(dot)ca
> http://www.credativ.ca
>
> On 14 November 2014 08:31, George Woodring <george(dot)woodring(at)iglass(dot)net>
> wrote:
>
>> I have 100 different customers with different timezones, I was trying to
>> avoid having to put a lookup table to say if I am connecting to foo set the
>> timezone to bar. GMT was just the example in the email.
>>
>> Thanks,
>> George
>>
>> iGLASS Networks
>> www.iglass.net
>>
>> On Fri, Nov 14, 2014 at 3:07 AM, Mikko Tiihonen <
>> Mikko(dot)Tiihonen(at)nitorcreations(dot)com> wrote:
>>
>>> Would an acceptable workaround for you to change the Java default
>>> timezone.
>>>
>>> Either start the JVM with -Duser.timezone=GMT
>>>
>>> or to invoke in your startup code
>>> TimeZone.setDefault(TimeZone.get("GMT"));
>>>
>>>
>>> -Mikko
>>> ------------------------------
>>> *From:* pgsql-jdbc-owner(at)postgresql(dot)org <pgsql-jdbc-owner(at)postgresql(dot)org>
>>> on behalf of Dave Cramer <pg(at)fastcrypt(dot)com>
>>> *Sent:* 13 November 2014 16:27
>>> *To:* George Woodring
>>> *Cc:* List
>>> *Subject:* Re: [JDBC] Anyway to tell jdbc to use server timezone?
>>>
>>> Ah, OK, this was done for binary protocol. I seem to recall this is
>>> somewhat defined in the spec according to setTimestamp.
>>>
>>> Is there a reason why you can't just override this in your code when
>>> you get a connection ?
>>>
>>>
>>>
>>> Dave Cramer
>>>
>>> dave.cramer(at)credativ(dot)ca
>>> http://www.credativ.ca
>>>
>>> On 13 November 2014 08:31, George Woodring <george(dot)woodring(at)iglass(dot)net>
>>> wrote:
>>>
>>>> It is not the where case that is my issue. It is that the jdbc driver
>>>> is changing my timezone from what I set with alter database to the timezone
>>>> of my web server for any queries from the web server. What I would like is
>>>> a way to keep the database timezone setting.
>>>>
>>>> When I log into my database with psql and show timezone I get "GMT",
>>>> when I put a log into my java code and show timezone I get "US/Eastern".
>>>> This is causing my data not to line up correctly around DST boundries,
>>>> since the data was save at 12, 2, 4am GMT and it is trying to find data at
>>>> 12, 2, 4am Eastern which is 12, 1, 3 am GMT
>>>>
>>>> Thanks
>>>> George
>>>>
>>>> iGLASS Networks
>>>> www.iglass.net
>>>>
>>>> On Wed, Nov 12, 2014 at 1:59 PM, Dave Cramer <pg(at)fastcrypt(dot)com> wrote:
>>>>
>>>>> George,
>>>>>
>>>>> I looked at the stackoverflow example. I fail to see how the driver
>>>>> would change the where clause.
>>>>>
>>>>> Can you create a self contained test case ?
>>>>>
>>>>> Dave Cramer
>>>>>
>>>>> dave.cramer(at)credativ(dot)ca
>>>>> http://www.credativ.ca
>>>>>
>>>>> On 12 November 2014 13:48, George Woodring <george(dot)woodring(at)iglass(dot)net
>>>>> > wrote:
>>>>>
>>>>>> I originally asked a question about adjusting timezone per db back
>>>>>>
>>>>>> 1B1B254441DB31448BD34C5BD73B0B8B2904B1(at)PHOENIX(dot)istructure(dot)com
>>>>>> <http://www.postgresql.org/message-id/1B1B254441DB31448BD34C5BD73B0B8B2904B1@PHOENIX.istructure.com>
>>>>>>
>>>>>>
>>>>>> And it was suggested that I set them per db, which I have. But now
>>>>>> moving to
>>>>>> 9.3 of the jdbc driver, it seems to set the timezone to the web
>>>>>> server's timezone.
>>>>>>
>>>>>> I have found mentions
>>>>>>
>>>>>> CAAXGW-y==FOGGB7jVWhDsaugXV20qeXUcgZSiteQ7jfMXOKi-A(at)mail(dot)gmail(dot)com
>>>>>> <http://www.postgresql.org/message-id/CAAXGW-y==FOGGB7jVWhDsaugXV20qeXUcgZSiteQ7jfMXOKi-A@mail.gmail.com>
>>>>>>
>>>>>>
>>>>>> and
>>>>>>
>>>>>>
>>>>>> http://stackoverflow.com/questions/18447995/postgresql-9-2-jdbc-driver-uses-client-time-zone
>>>>>>
>>>>>> My question here is is there a way to disable it and get the older
>>>>>> functionality? Is there a command I could run after I get the connection
>>>>>> to say "set timezone = 'server default'"?
>>>>>>
>>>>>> Thanks
>>>>>> George Woodring
>>>>>> iGLASS Networks
>>>>>> www.iglass.net
>>>>>>
>>>>>
>>>>>
>>>>
>>>
>>
>

In response to

Responses

Browse pgsql-jdbc by date

  From Date Subject
Next Message George Woodring 2014-11-14 19:17:02 Re: Anyway to tell jdbc to use server timezone?
Previous Message Mikko Tiihonen 2014-11-14 15:04:07 Re: Anyway to tell jdbc to use server timezone?