Why does Oracle think that the timezone offset of Denver is UTC-7:00? The server time and systimestamp look right.
Server 1: Oracle 11.2.0.4.0
SELECT SESSIONTIMEZONE FROM DUAL;
America/Denver
cat /etc/sysconfig/clock
ZONE="America/Denver"
SELECT * FROM v$timezone_file;
timezlrg_14.dat 14
SELECT systimestamp FROM dual;
29-JUN-21 01.29.21.546036000 PM -06:00
SELECT tzabbrev, SUBSTR(tz_offset(tzname), 1, 6), tzname FROM v$timezone_names tz WHERE tzname = 'America/Denver';
LMT -06:00 America/Denver
MST -06:00 America/Denver
MDT -06:00 America/Denver
MWT -06:00 America/Denver
MPT -06:00 America/Denver
Server 2: Oracle 11.1.0.6.0
SELECT SESSIONTIMEZONE FROM DUAL;
America/Denver
cat /etc/sysconfig/clock
ZONE="America/Denver"
UTC=false
ARC=false
SELECT * FROM v$timezone_file;
timezlrg.dat 4
SELECT tzabbrev, SUBSTR(tz_offset(tzname), 1, 6), tzname FROM v$timezone_names tz WHERE tzname = 'America/Denver';
LMT -07:00 America/Denver
MST -07:00 America/Denver
MWT -07:00 America/Denver
MDT -07:00 America/Denver
systimestamp on
server 2? Result ofTZ_OFFSET
depends on Daylight-Saving-Time status at the moment when you execute the function.01-JUL-21 03.19.31.175264000 PM -06:00
Server 2:01-JUL-21 03.19.37.524027000 PM -06:00
TO_CHAR(SYSTIMESTAMP, 'YYYY-MM-DD HH24:mi:SS tzr-tzd-tzh:tzm')
? Perhaps the old time zone file (version 4 vs. version 14) does not define DST for America/Denver, however I did not find anything in the IANA time zone database releases notes.