Issue 31016  —   $NLS_INTERNAL_TIME UTC timestamps wrong before Daylight Saving Time changes

Status:   Solved in 10.2.01

Solution available in patch(es):      X704    G101

Description:

 Summary:
 --------
 With fix for bug 30925, using UTC as the internal time zone, the
 external value for datetime fields is no longer calculated based
 upon the current date but based upon the actual date in the datetime
 field. This now works as expected. However, a few hours before
 Daylight Savings time switches on and off, the external datetime
 value is displayed incorrectly, adding or substracting an hour
 BEFORE the change should go in effect at 2am.

 Environment:
 -----------
 Version:          Uniface Nine
 Operating System: OS independent
 Database:         DBMS independent

 Symptoms:
 ---------
 With fix for bug 30925, using UTC as the internal time zone, the
 external value for datetime fields is no longer calculated based
 upon the current date but based upon the actual date in the
 datetime field. This now works as expected. However, a few hours
 before Daylight Savings time switches on and off, the external
 datetime value based on $NLS_TIME_ZONE is calculated incorrectly,
 adding or subtracting an hour BEFORE the Daylight Savings Time
 change should go in effect at 2am.

 Example:
 --------
 In the US, Daylight Saving starts on Sunday, 8 March (2am will
 become 3am) and ends Sunday, 1 November (2am will become 1am).
 The following example shows datetime ranges that are handled
 incorrectly:

   $NLS_INTERNAL_TIME UTC &
     $NLS_TIME_ZONE America/Detroit  (Eastern Time Zone)

 Time entered            Time displayed
 07-MAR-2015 21.00.00    07-MAR-2015 22.00.00
 07-MAR-2015 22.00.00    07-MAR-2015 23.00.00
 07-MAR-2015 23.00.00    08-MAR-2015 00.00.00
 07-MAR-2015 23.59.00    08-MAR-2015 00.59.00
 08-MAR-2015 00.00.00    08-MAR-2015 01.00.00
 08-MAR-2015 01.00.00    08-MAR-2015 02.00.00

 31-OCT-2015 21.00.00    31-OCT-2015 20.00.00
 31-OCT-2015 22.00.00    31-OCT-2015 21.00.00
 31-OCT-2015 23.00.00    31-OCT-2015 22.00.00
 31-OCT-2015 23.59.00    31-OCT-2015 22.59.00
 01-NOV-2015 00.00.00    31-OCT-2015 23.00.00
 01-NOV-2015 00.59.00    31-OCT-2015 23.59.00

Workaround:

 There is no known workaround for this problem.

Notes: