Time Zones

By default, SMART folders and jobs run and execute in the time zone where the Control-M/Server is located. You can change the time zone where your SMART folders and jobs run and execute in the scheduling definitions, as described in Scheduling. You can also define Site Standard rules with time zones, as described in Creating a Site Standard Rule.

Jobs that are scheduled to run in a user-defined time zone must be saved at least 48 hours before their intended execution dates. Jobs with different time zones must not be combined in the same folder. This ensures that the jobs automatically run via the appropriate New Day procedure or User Daily method. If a newly scheduled job has to run today, you must run it manually. For more information on New Day and User Daily, see New Day Procedure.

In the ctmpsm Monitoring utility, STATE values are calculated according to the Control-M/Server New Day time.

The Control-M/Server resides in a PST (GMT-08:00) time zone and executes the New Day procedure at midnight. The Payroll_EST job is scheduled to run on 6 July in the EST (GMT-05:00) time zone. The following STATE values appear in the ctmpsm utility, at the times listed:

  • 5 July, midnight–21:00 pm PST: The STATE value in the ctmpsm utility is Wait ODAT.

  • 5 July, 21:00 pm PST–6 July, 21:00 pm PST: The STATE value in the ctmpsm utility begins as Wait Sched and changes depending upon the prerequisites. After the prerequisites are met, the state changes in the following order:
    SubmittedExecutingEndedAnalyzedPost Proc.

  • 6 July, 21:00 pm–midnight PST: The STATE value in the ctmpsm utility is Post ODAT.

For more information on STATE values, see Values in STATE and STATUS ctmpsm Fields.

For more information on running jobs in a specific time zone on a future date, see the -odate and -odate_option parameters in any of the following Monitoring utility parameter tables:

Adding a Time Zone

This procedure describes how to add a new time zone to the TimeZone.dat file, which enables you to select a time zone in the scheduling definitions for a SMART folder, sub-folder, or job.

Begin

  1. Navigate to the following directories, and complete steps 2–4 of this procedure for each TimeZone.dat file:

    • Linux:

      • Control-M/EM Server: <Control-M/EM_home>/ctm_em/etc/cli/data

      • Control-M/Server: <Control-M/Server_home>/ctm_server/data

    • Windows:

      • Control-M/EM Server: <Control-M/EM_home>\Default\Data

      • Control-M/Server: <Control-M/Server_home>\ctm_server\data

      • Control-M Desktop: <Control-M_Desktop_home>\data

  2. Open the TimeZone.dat file.

    The list of current time zones appears.

    The standard format for a time zone definition is timeZone (GMT±hh:mm), where timeZone represents the time zone label.

    The label RIO represents the Rio de Janeiro time zone, and the standard format entry is RIO (GMT -03:00).

  3. Add a new time zone to the end of the list in the standard time zone format.

    • PTI (GMT -08:00) for the Pitcairn Islands, British Overseas Territories.

    • DAR (GMT +09:30) for Darwin, Australia.

  4. Verify that there is an empty line at the end of the file, save the file, and close it.

  5. After you have added a time zone in each TimeZone.dat file, run the following script on the following components:

    • Control-M/EM Server: "<EM_Home>/bin/em bmcpython <EM_Home>/etc/cli/data/convert_timezone_dat_to_json.py" "<EM_Home>/etc/cli/data/TimeZone.dat" "<EM_Home>/etc/cli/data/TimeZone.json"

    • Control-M/Server: run_python "<CTM_Server_Home>/ctm_server/scripts/convert_timezone_dat_to_json.py" "<CTM_Server_Home>/data/TimeZone.dat" "<CTM_Server_Home>/data/TimeZone.json"

  6. Do the following:

    • Control-M/EM Server: Refresh the Control-M/EM Server.
    • Control-M/Server: Refresh the Control-M/Server.

    • Control-M Desktop: Log out and log back in to Control-M Desktop.

Daylight Savings Time

Daylight Savings Time (DST) refers to the spring, summer, and early fall season when clocks are set one or more hours ahead to add more daylight hours to the end of the work day. The following topics describe how to accommodate for DST.

Defining Daylight Savings Time

This procedure describes how to define Daylight Savings Time (DST) in the TimeZone.dat file. You must perform this procedure only in the following situations:

  • The Control-M/Server resides in a location that uses DST.

  • The scheduling definitions of a SMART folder, sub-folder, or job use a time zone with DST that differs from the Control-M/Server time zone.

In each of the above instances, you must change DST yearly, since the dates when the clocks are changed shift every year.

Begin

  1. Navigate to the following directories, and complete steps 2–4 of this procedure for each TimeZone.dat file:

    • Control-M/EM Server: <EM_Home>/ctm_em/data

    • Control-M/Server: <Control-M/Server_Home>/data

    • Control-M Desktop: <Control-M_Desktop_Home>/data

      The standard format for a time zone definition is timeZone (GMT±hh:mm), where timeZone represents the time zone label.

    The label EST represents the Eastern Standard Time time zone. The standard format entry for Eastern Standard Time is EST (GMT -05:00).

  2. Do one of the following:

    • Northern Hemisphere: Open the TimeZone.dat file and change the relevant time zone definition so that it includes DST adjustments, as follows:
      timeZone (GMT±hh:mm) FROM dd.mm hh:mm TO dd.mm hh:mm (GMT±hh:mm)

      Where:

      • timeZone (GMT±hh:mm) indicates the standard time zone value, such as CET (GMT+02:00).

      • The FROM and TO values indicate the time frame when DST is in effect, such as FROM 01.03 01:59 TO 24.10 02:00.

      • The second GMT value indicates the DST time offset value, relative to GMT, such as (GMT+03:00).

    • Southern Hemisphere: Open the TimeZone.dat file and change the relevant time zone definition so that it includes DST adjustments, as follows:
      timeZone (GMT±hh:mm) FROM dd.mm hh:mm TO dd.mm hh:mm (GMT±hh:mm)

      Where:

      • timeZone (GMT±hh:mm) indicates the DST time offset value, such as SYD (GMT+11:00).

      • The FROM and TO values indicate the time frame when standard time is in effect, such as FROM 02.04 03:00 TO 01.10 02:00.

      • The second GMT value indicates the standard time zone value, such as (GMT+10:00).

    • In the Southern Hemisphere, the syntax and type of time frame (standard time instead of DST) is reversed.

    • If a relevant time zone contains several countries, and some observe DST and some do not, or if they change the clock on different days, add additional time zone definitions to cover the variations.

    • Bill needs to define DST support for Anchorage, Alaska, USA. The current entry for Anchorage in each TimeZone.dat file is ANC (GMT-09:00). Anchorage DST begins on 12 March 2023 at 02:00 am and ends on 5 November 2023 at 02:00 am. Bill changes the entry to define DST support for Anchorage, as follows:
      ANC (GMT-09:00) FROM 12.03 02:00 TO 05.11 02:00 (GMT-08:00)

    • Susan knows that in the Northern Hemisphere, during spring and summer, time zone definitions are set to DST where it is used. At the same time in the Southern Hemisphere, where it is fall and winter, locations that use DST are set to standard time. In Sydney, Australia, standard time (GMT+10:00) lasts from 2 April 2023 at 03:00 am to 1 October 2023 at 02:00 am. The rest of the year, the time zone is set to DST for spring and summer, which is one hour later (GMT+11:00). Susan changes the current entry to define DST support for Sydney, as follows:
      SYD (GMT+11:00) FROM 02.04 03:00 TO 01.10 02:00 (GMT+10:00)

  3. Verify that there is an empty line at the end of the file, save the file, and close it.

  4. After you have added a time zone in each TimeZone.dat file, run the following script on the following components:

    • Control-M/EM Server: "<EM_Home>/bin/em bmcpython <EM_Home>/etc/cli/data/convert_timezone_dat_to_json.py" "<EM_Home>/etc/cli/data/TimeZone.dat" "<EM_Home>/etc/cli/data/TimeZone.json"

    • Control-M/Server: run_python "<CTM_Server_Home>/ctm_server/scripts/convert_timezone_dat_to_json.py" "<CTM_Server_Home>/data/TimeZone.dat" "<CTM_Server_Home>/data/TimeZone.json"

  5. Do the following:

    • Control-M/EM Server: Refresh the Control-M/EM Server.
    • Control-M/Server: Refresh the Control-M/Server.

    • Control-M Desktop: Log out and log back into the Control-M Desktop.

  6. Update the relevant scheduling attributes in Site Standards and job properties, using the new time zone definitions.

    If you delete or modify a time zone definition in the TimeZone.dat files, you must change any Site Standards and job definitions that specify the changed time zone. Otherwise, those job processing definitions are invalid.

Daylight Savings Time Considerations

The following examples assume that the clock is moved forward one hour at 02:00 am (02:00 am becomes 03:00 am). If the computer is capable of changing the clock without restarting the system, do not shut down Control-M when the clock is being advanced.

If your data center includes multiple time zones, you might need to adjust the TimeZone.dat files to reflect the different Daylight Savings Time (DST) offsets in those time zones. This adjustment is especially important because the dates when the clocks are changed in each time zone are often different from each other, in addition to being different from themselves in previous years.

New DayClosed A Control-M process that begins every day at 7:00 AM, adds jobs and folders to the Run Queue for the day that is about to begin, and removes jobs and folders from previous days. Procedure

  • If the New Day procedure begins before you reset the clock, the New Day procedure will start working before the clock is advanced and it will continue normally, even if the clock is advanced while the New Day procedure is in process.

  • If the New Day procedure is scheduled to begin at exactly 02:00 am, the same considerations apply. It is possible that the New Day procedure will begin execution before the clock is manually changed. Otherwise, changing the clock will initiate New Day processing.

  • If the New Day procedure is scheduled to begin between 02:00 am and 03:00 am, after the computer clock is advanced, Control-M will start the normal New Day processing.

  • If the New Day procedure is scheduled to begin after 03:00 am, no action is required. Control-M will start the standard New Day procedure.

Time-Dependent Shout Messages

  • Shout messages that are scheduled before 02:00 am do not require any action.

  • Shout messages that are scheduled between 02:00 am and 03:00 am will be issued, even though there might not be a delay in production because the time frame for production is smaller.

  • The above information also applies to jobs that have Shout messages scheduled at a later time (for example, 06:00 am). These jobs might be considered late because of the tighter production time frame.

Time-Dependent Schedules

  • From and To: Jobs with scheduled times that overlap the time gap created by the one-hour advancement may need manual intervention. For example, it is possible that a job with a From value of 02:15 am and a To value of 02:45 am might not be submitted at all. These jobs must be manually adjusted.

  • Cyclic Jobs or Cyclic SMART folder: The next run of cyclic jobs with an interval that exceeds one hour runs one hour sooner than it was scheduled. Cyclic jobs with an interval that is less than one hour run immediately. A cyclic job might have to be deleted and then resubmitted to continue the processing cycle during the current day.

The Control-M/Server log file does not contain entries with timestamps between 02:00 am and 03:00 am. Any scripts or programs that rely on log entry times must be checked for possible discrepancies as a result of advancing the clock.

Winter Time Considerations

The following examples assume that the clock is moved back one hour at 02:00 am (02:00 am becomes 01:00 am).

New DayClosed A Control-M process that begins every day at 7:00 AM, adds jobs and folders to the Run Queue for the day that is about to begin, and removes jobs and folders from previous days. Procedure

  • If the New Day procedure begins before 01:00 am, no special action must be taken. The New Day procedure will run only once, between midnight (00:00) and 00:59 am.

  • If the New Day procedure begins at exactly 01:00 am, the computer time must not be turned back to 01:00 am, in order to avoid another New Day process. A second New Day procedure requires manual intervention. It is advisable to wait until 02:01 am, and then turn the clock back to 01:01 am.

  • If the New Day procedure is scheduled to begin between 01:00 am and 02:00 am, do one of the following actions:

    • Wait at least a full hour after the daily run to ensure the New Day procedure has ended, and then turn the clock back as needed.

    • Update the clock before New Day processing begins.

    For example, if the New Day time begins at 01:45 am, the clock must be moved back an hour by no later than 01:44 am. If the clock was not moved back by 01:44 am, you must wait until 02:46 am to change the time.

  • If the New Day procedure is scheduled to begin after 02:00 am, no special action must be taken.

Time-Dependent Shout Messages

Shout messages scheduled between 01:00 am and 02:00 am might be issued twice.

Time-Dependent Schedules

  • From and To: No special action must be taken for jobs with From–To schedules. Jobs scheduled to begin execution between 01:00 am and 02:00 am begin their execution the first time that this interval occurs, provided that their prerequisites, Lock Resources, and Resource Pools are met. However, they can be restarted after the clock is moved back.

  • Cyclic Jobs or Cyclic SMART Folders: The next run of cyclic jobs runs one hour later than it was scheduled.

Control-M/Server Log File

The Control-M/Server log file might contain entries with times earlier than previous entries, due to the one-hour retrogression. The same considerations that apply to moving the clock forward must be applied to moving it backward.