Page 1 of 1

Seroius direct TCP bug regarding timestamp with TZ columns and region

Posted: Sat 19 May 2018 18:59
by heidenbluth
I am working with Oracle 12c release 2 and Delphi XE 10.2.3.

Please connect via Oracle SQLNet and execute

Code: Select all

alter session set NLS_TIMESTAMP_TZ_FORMAT = 'DD-MON-RR HH.MI.SSXFF AM TZR';
select TIMESTAMP '1999-10-29 01:30:00 US/Pacific PDT' from dual
BTW, in my Delphi code, I am setting <timestamp_column>.Format := <NLS_TIMESTAMP_TZ_FORMAT>

The result is as expected

Code: Select all

29-OCT-99 01.30.00.000000000 AM US/PACIFIC
Now I am connecting by direct TCP
The result is erroneous:

Code: Select all

03-NOV-99 07.06.00,000000000 AM +117:96
Besides the difference in dates, the last 2 Bytes are always interpreted as TZH:TZM. That gives wrong results having UTC offsets of more than 100 hours.

Re: Seroius direct TCP bug regarding timestamp with TZ columns and region

Posted: Mon 21 May 2018 08:26
by MaximG
Thank you for the information. We have reproduced the issue and will investigate its origin. We will inform you about the results shortly.

Re: Seroius direct TCP bug regarding timestamp with TZ columns and region

Posted: Wed 20 Jun 2018 11:52
by MaximG
We reproduced the issue and fixed this error. The fix will be included in the next ODAC build. As a workaround, we can send you a night ODAC build including the required changes. For this, using e-support form (https://www.devart.com/company/contactform.html) provide us with your license number