My Oracle Support Banner

SYSTIMESTAMP returns wrong timezone for AMERICA/SAO_PAULO and BRAZIL/EAST in SQLDeveloper and SQLcl after installing the DSTv34 patch for Oracle Database. (Doc ID 2621534.1)

Last updated on DECEMBER 23, 2019

Applies to:

Oracle Database - Enterprise Edition - Version 12.1.0.2 and later
Information in this document applies to any platform.

Symptoms

The function "systimestamp AT TIME ZONE 'America/Sao_Paulo'" and "systimestamp AT TIME ZONE 'Brazil/East'" returns wrong timezone after upgrading database with DSTv34 patch.

Using "to_char(systimestamp AT TIME ZONE 'America/Sao_Paulo','DD/MM/YYYY HH24:MI:SS')" or "to_char(systimestamp AT TIME ZONE 'America/Sao_Paulo','DD/MM/YYYY HH24:MI:SS')" returns the correct timezone after upgrading database with DSTv34 patch.

 

The problem happens from JDBC clients (SQLDeveloper, SQLcl, Java Application). 

The problem does NOT happen from SQL*Plus (using "sqlplus / as sysdba" or EZCONNECT "sqlplus sys/password@hostname:port/service_name as sysdba"). 

 

AMERICA/SAO_PAULO and BRAZIL/EAST are GMT-3.

 "systimestamp AT TIME ZONE 'America/Sao_Paulo'" returns GMT-2. THIS IS THE PROBLEM.

 "to_char(systimestamp AT TIME ZONE 'America/Sao_Paulo','DD/MM/YYYY HH24:MI:SS') as tocharsysAmerica" returns GMT-3, which is correct.

 

Changes

Installed the DSTv34 patch on the Oracle Database. 

Cause

To view full details, sign in with your My Oracle Support account.

Don't have a My Oracle Support account? Click to get started!


In this Document
Symptoms
Changes
Cause
Solution
References


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.