Daylight Savings Time Change

This document contains suggestions for working with time correction into and out of Daylight Savings Time. Refer to your MPE/iX documentation for details.

Background

MPE/iX references time in two ways:
  • MPE/iX date functions that include date, time, and time zone as displayed by SHOWTIME or SHOWCLOCK. This accesses the traditional MPE/iX clock and displays the local time.
  • POSIX date functions that reference the MPE/iX date functions, mentioned above, and also reference the MPE/iX and POSIX CI TZ variable to display the local time.
Many applications like JobPak, TranSpooler, and others use both time references. Therefore, you must ensure that both MPE/iX and POSIX dates and times are synchronized. Depending on when you change the MPE/iX time, it is possible for the two time references to become unsynchronized, causing the system to inaccurately record time.


MPE/iX Date Functions

MPE/iX date, time, and time zone functions do not automatically adjust for going into or out of Daylight Savings Time. You must manually set them. To do this, Nobix suggests you change the MPE/iX time zone value as well as the date and time. The MPE/iX time zone value is stated in hours West or East of the Pime Meridian (or GMT or UTC). You need to know which time zone you are in. For instance, California in the U.S.A. is in the Pacific time zone. For Standard Time, the MPE/iX Time Zone value is W8:00. For Daylight Savings Time it is W7:00. You change these values twice a year, in the spring and in the fall.


POSIX Date Functions

POSIX date functions automatically adjust for going into or out of Daylight Savings Time. You do not have to adjust them.

According to law, local time changes at 2:00 a.m. However, POSIX date functions do not follow this standard. With POSIX functions, the local time changes as follows:

  • At 1:00 a.m. on the specified Sunday in the fall
  • At 3:00 a.m. on the specified Sunday in the spring

POSIX date functions reference the MPE/iX date functions and adjust accordingly. However, because of the difference in time between the moment you manually adjust the MPE/iX date functions and the moment when the POSIX automatic date functions adjust, the date recorded by the system can be inaccurate for a period of time until the two times synchronize. The following Fall and Spring Time Adjustment sections contain suggestions that can help minimize this affect.

The MPE/iX and POSIX CI TZ variable is used by the POSIX date functions and should be set in the MPE/iX CI environment as a system-wide Logon UDC. This allows the same value to be used for every user on the system. Once set, the TZ variable should not be changed. Reference the TZTAB.LIB.SYS file to find the appropriate TZ value for your geographic location.

The TZTAB.LIB.SYS file, supplied with your operating system, contains a listing of geographical locations, dates to change the time for fall and spring, and valid time zone values. If your geographical location uses Daylight Savings Time, you can find the appropriate time zone value for your location in this easily viewable text file. Refer to your MPE/iX documentation for the format of each record in the list.


POSIX (T)ime (Z)one Adjustments

The JobPak software is dependent upon POSIX date functions for the management of spoolfiles in the NSD account on the HP 3000. Before installing or updating JobPak, set the POSIX Time Zone variable for all users.

Set the TZ CI variable in the system-wide OPTION LOGON UDC.

SETVAR TZ "STDoffsetDST"

Syntax Description
STD The Standard Time Zone where the system is located
offset The value that must be added to local time to arrive at Coordinated Universal Time (UTC or Greenwich Mean Time). If the offset is preceded by a - (minus), the time zone is east of the Prime Meridian. The default is west of the Prime Meridian and has no preceding - (minus); + is assumed.
DST The Daylight Savings Time Zone. If Daylight Savings Time is not used, leave this field empty.


Example:

  Pacific Time SETVAR TZ "PST8PDT"
Mountain Time SETVAR TZ "MST7MDT"
Central Time SETVAR TZ "CST6CDT"
Eastern Time SETVAR TZ "EST5EDT"

To check the values that have been set for this variable, read the TZTAB.LIB.SYS file on your HP 3000 system. This file contains a table that lists all the time zones and their associated variable values. Do not modify this file.

If JobPak version 6.1 is currently installed and running on your system and you change the TZ variable, you must stop JobPak and restart to enable the variable change.

Fall Time Adjustment

To make the fall adjustment, change the MPE/iX time zone, date, and time.

If you change the MPE/iX time backwards before 1:01 a.m., POSIX time becomes one hour later than MPE/iX time until the MPE/iX time becomes 1:00 a.m., when they synchronize. If you change the MPE/iX time backward at 1:00 a.m. or after, POSIX time and MPE/iX time stay synchronized.

When you change the MPE/iX time zone value to reflect Daylight Savings Time, you cause the MPE/iX time to move backwards. Once you change the MPE/iX time zone value, MPE/iX uses its automatic time correction and slows its clock until it reaches the appropriate time. This can cause the system time to be inaccurate for approximately 24 hours. For this reason, Nobix suggests canceling the automatic time correction and explicitly stating the MPE/iX time.

Example:

To change the MPE/iX date backward in time:

  1. Although you may perform this procedure earlier or later, the proper way would be to select a time at or after 1:01 a.m.

  2. Stop JobPak, TranSpooler, and any other applications that log the date and time.

  3. Logon as MANAGER.SYS.

  4. Change the MPE/iX time zone.

       SETCLOCK ;TIMEZONE= your time zone value for Standard Time, as in W8:00

  5. Stop all time correction taking place on the system.

       SETCLOCK ;CANCEL

  6. Set the date and time.

       SETCLOCK DATE=MM/DD/YY; TIME=HH:SS;NOW

Spring Time Adjustment

To make the spring adjustment, change the MPE/iX time zone, date, and time as in the example above, but use the Daylight Savings offset hours from UTC/GMT. In the Pacific time zone this would be 7 hours or W7:00.