Seroius direct TCP bug regarding timestamp with TZ columns and region

Discussion of open issues, suggestions and bugs regarding ODAC (Oracle Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
heidenbluth
Posts: 56
Joined: Mon 08 Nov 2004 19:01
Location: Germany

Seroius direct TCP bug regarding timestamp with TZ columns and region

Post by heidenbluth » Sat 19 May 2018 18:59

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.

MaximG
Devart Team
Posts: 1822
Joined: Mon 06 Jul 2015 11:34

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

Post by MaximG » Mon 21 May 2018 08:26

Thank you for the information. We have reproduced the issue and will investigate its origin. We will inform you about the results shortly.

MaximG
Devart Team
Posts: 1822
Joined: Mon 06 Jul 2015 11:34

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

Post by MaximG » Wed 20 Jun 2018 11:52

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

Post Reply