Known Issue: Date/Time Transformers Do Not Recognize New Canadian Time Zones

Donal Mateer
Donal Mateer
  • Updated
Known Issue ID FMEENGINE-99737
Feature DateTimeStamper Transformer, DateTimeCalculator Transformer, Date/Time Functions
Product FME Form, FME Flow
Versions Affected 2026.3.1 and prior
Status Resolved

Issue

On Windows machines set to one of the new Canadian time zones, the DateTimeStamper, DateTimeCalculator, and FME date and time functions do not recognize the time zone, and workspaces that use them may fail. This applies to workspaces run in FME Form and to jobs run on FME Flow.

The error depends on the FME version. For example, with the DateTimeStamper:

  • FME 2017.1: DateTimeStamper: Failed to load timezone data. Please visit http://www.safe.com/support
  • FME 2018.0 to 2025.x: DateTimeStamper: Failed to load timezone data. current_zone() failed: A mapping from the Windows Time Zone id "British Columbia Standard Time" was not found in the time zone mapping database.. Please visit http://www.safe.com/support
  • FME 2026.1 and later, including 2026.3.x: DateTimeStamper: Failed to load timezone data. DateTimeStamper. Please visit http://www.safe.com/support

Cause

British Columbia, Alberta, the Northwest Territories, and Manitoba will not set clocks back on November 1, 2026, and will stay on permanent year-round time:

  • British Columbia (most of the province): UTC-7
  • Alberta, and aligned locations in the NWT and southeastern BC: UTC-6
  • Manitoba: UTC-5

Microsoft released Windows updates that add new Canadian time zones for these regions, and the operating system now uses them: (UTC-07:00) Pacific Time (British Columbia), (UTC-06:00) Mountain Time (Alberta), and (UTC-05:00) Manitoba.

FME's date and time libraries do not yet recognize the new Windows time zones, so they cannot map them to the correct rules.

Workaround

If you are unable to upgrade to FME 2026.3.1.1 or later, you can use one of the following workarounds.

Workaround 1: Use an Interim Time Zone

Set the machine to an existing Windows time zone with the correct offset as an interim solution, and switch to the new regional time zone once FME supports it.

1. Open Date & Time Settings

In Windows, open Settings > Time & language > Date & time.

2. Turn Off Set Time Zone Automatically

Turn off Set time zone automatically if it is enabled.

3. Select the Interim Time Zone

As of October 8, 2026, Microsoft's interim guidance (British Columbia, Alberta, Manitoba) recommends:

  • Most of British Columbia: (UTC-07:00) Yukon
  • Alberta and aligned locations: (UTC-06:00) Saskatchewan
  • Manitoba: (UTC-05:00) Eastern Time (US & Canada), with Adjust for daylight saving time automatically turned off

Microsoft describes these as temporary choices: they give the right UTC offset, but their names, geographic mappings, and historical rules differ, so they are not permanent replacements.

If you change the time zone on the machine running FME Flow, you also need to restart FME Flow and refresh every time-of-day schedule. See Known Issue: FME Flow Schedules Run Late After Canadian Time Change.

Workaround 2: Update FME's Time Zone Database

FME includes a time zone database used for date/time operations in your workspaces. It is a combination of files from two open sources, the Internet Assigned Numbers Authority (IANA) and Unicode, so you can update it without installing a new version of FME.

Close all FME programs and translations first. You need administrator rights.

Licensing and support. The changes in this article are authorized by Safe Software and do not affect your license under the FME Software License Agreement or your support entitlement, provided you follow the steps as written and keep a copy of the original files (Step 2). The time zone data comes from IANA and Unicode, and you download it directly from them.

1. Find the Time Zone Folder

  • FME Form: <FME Form installation folder>\datetime\tzdata
  • FME Flow: <FME Flow installation folder>\Server\fme\datetime\tzdata (by default C:\Program Files\FMEFlow\Server\fme\datetime\tzdata), on every machine that runs FME Flow Engines. First, stop the FME Flow Engines service.

2. Back Up the Existing Folder

Rename the tzdata folder to tzdata_old, then create a new, empty tzdata folder in the same place.

3. Download and Extract the Time Zone Data

In a browser, download tzdata2026e.tar.gz from IANA and extract it:

  • On Windows 11 version 24H2 or later, right-click the .tar.gz file and choose Extract All.
  • Otherwise, use 7-Zip. This may take two steps: the .tar.gz extracts to a .tar, then extract that.

Copy the contents of the extracted folder (not the folder itself) into the new tzdata folder.

The files must be directly inside tzdata. A subfolder does not work, and FME will still fail with "Failed to load timezone data".

4. Download the Windows Time Zone Mapping File

In a browser, download windowsZones.xml from Unicode and save it directly into the new tzdata folder.

5. Restart FME

FME Form: open FME Workbench again. FME Flow: restart the FME Flow Engines service.

6. Test the Update

In FME Workbench, use an AttributeCreator to set an attribute to @TimeZoneSet(20261102200000+00:00,local). The result should be:

  • British Columbia: 20261102130000-07:00
  • Alberta: 20261102140000-06:00
  • Manitoba: 20261102150000-05:00

To Undo the Change

Close FME (or stop the FME Flow Engines service), delete the new tzdata folder, and rename tzdata_old back to tzdata.

Alternative for Administrators: Command Prompt

If you need to update multiple machines, you can run these commands in a Command Prompt opened as administrator (click Start, type cmd, right-click Command Prompt, and choose Run as administrator). These steps update the time zone data for FME 2017.0 and later on Windows. If FME isn't installed in C:\Program Files\FME, change the first line to the folder that contains fme.exe. For FME Flow, use <FME Flow installation folder>\Server\fme and stop the FME Flow Engines service first.

Provided as is, without warranty; test before production use.

set "FMEDIR=C:\Program Files\FME"
set "DL=%USERPROFILE%\Downloads"
"%SystemRoot%\System32\curl.exe" -L -o "%DL%\tzdata2026e.tar.gz" https://data.iana.org/time-zones/releases/tzdata2026e.tar.gz
"%SystemRoot%\System32\curl.exe" -L -o "%DL%\windowsZones.xml" https://raw.githubusercontent.com/unicode-org/cldr/release-49/common/supplemental/windowsZones.xml
cd /d "%FMEDIR%\datetime"
ren tzdata tzdata_old
mkdir tzdata
"%SystemRoot%\System32\tar.exe" -xzf "%DL%\tzdata2026e.tar.gz" -C tzdata
copy "%DL%\windowsZones.xml" tzdata\
type tzdata\version

The last command should print 2026e. Repeat for each FME installation. To undo, run the following with FMEDIR set as above:

cd /d "%FMEDIR%\datetime"
rmdir /s /q tzdata
ren tzdata_old tzdata

If You Use Python in Your Workspaces

This update is only needed if your workspaces use Python, for example in a PythonCaller. To correspond to IANA 2026e (includes Manitoba), upgrade these Python libraries:

1. Install the Python Libraries

If you have more than one FME version installed, you may wish to navigate to the <FME_HOME> directory for the version you are updating, where fme.exe is located.  Python 3.9+ will pull the same files and can be used in any FME version that ships with Python 3.9 or later.  Run the following commands:

  • fme.exe python -m pip install pytz
  • fme.exe python -m pip install tzdata

This will create new folders:

  • %USERPROFILE%\Documents\FME\Plugins\Python\python3*\pytz\
  • %USERPROFILE%\Documents\FME\Plugins\Python\python3*\pytz-2026.5.dist-info\
  • %USERPROFILE%\Documents\FME\Plugins\Python\python3*\tzdata\
  • %USERPROFILE%\Documents\FME\Plugins\Python\python3*\tzdata-2026.5.dist-info\

On versions of FME before 2026.3, the tzdata folder will not be present.  

FME Flow: On an FME Flow system, you may find it helpful to use -t to place these files in a known location before copying them to the FME Flow installation folder.   Ensure there is a newly created clean folder, eg., newfolder.  

  • fme.exe python -m pip install pytz -t "C:\temp\newfolder" 
  • fme.exe python -m pip install tzdata -t "C:\temp\newfolder"

Examples of <FME_HOME> for Form and Flow:

  • FME Form <FME_HOME> eg.   C:\Program Files\FME\
  • FME Flow  <FME_HOME> eg.    C:\Program Files\FMEFlow\Server\fme\

2. Copy the Python Folders into FME

Back up the same folders from <FME_HOME>\python\, then copy the new folders and all their content into <FME_HOME>\python\.

3. Update fmesite.py file

In <FME_HOME>\python, edit the fmesite.py file with these additional lines at the end of the file:

if sys.platform == "win32": 
   from tzlocal.windows_tz import win_tz 
   win_tz.setdefault("British Columbia Standard Time", "America/Vancouver") 
   win_tz.setdefault("Alberta Standard Time", "America/Edmonton") 
   win_tz.setdefault("Manitoba Standard Time", "America/Winnipeg") 

Resolution

This issue is resolved in FME 2026.3.1.1 (build 26670), available from the FME Downloads page. The fix will also be included in FME 2026.3.2 and FME 2026.4. On FME Flow, upgrading to 2026.3.1.1 fixes the job errors, but not the scheduling issue. For schedules and automations, see Known Issue: FME Flow Schedules Run Late After Canadian Time Change.

FME 2026.3.1 already includes the Python update for British Columbia, Alberta, and the Northwest Territories.

If you use Java-based (JDBC) integrations in your workspace

This change involves the FME Engine in FME Form and FME Flow.  

Go to the Files section on the right of this article. Download and extract FME_Engine.zip. 

In <FME_HOME>\jre\lib, replace tzdb.dat with the same-named file from FME_Engine.zip (keep a copy of the original tzdb.dat and of tzmappings). 

Then add the three new Windows time zone lines to tzmappings in an elevated PowerShell. Ensure this step is run correctly by inspecting the tzmappings file after running the PowerShell script. The lines must be correct; if any line in tzmappings is malformed, Java rejects the whole file.
Provided as is, without warranty; test before production use.

  • FME Form <FME_HOME> eg.   C:\Program Files\FME\
  • FME Flow  <FME_HOME> eg.    C:\Program Files\FMEFlow\Server\fme\

Use this PowerShell command (ensure you correctly update <FME HOME> before running this in PowerShell):

Add-Content -Encoding ASCII "<FME HOME>\jre\lib\tzmappings" @("British Columbia Standard Time:001:America/Vancouver:", "Alberta Standard Time:001:America/Edmonton:", "Manitoba Standard Time:001:America/Winnipeg:")

 

Add all three lines as shown in the PowerShell command, no matter which province you are in. Always replace tzdb.dat, and ensure the tzmappings file is updated correctly by inspecting the contents in a text editor after running the PowerShell command. The three lines are added to the end of the file.

Related Issues

  • SharePointOnlineConnector: can fail on startup with a time zone error when Windows is set to (UTC-07:00) Pacific Time (British Columbia). Fixed in the SharePoint Online package v1.17.1 on FME Hub. (FMEENGINE-99701)
  • Elasticsearch reader: when it converts date fields using a date pattern that includes a time, converted times in British Columbia, Alberta, the Northwest Territories, and Manitoba would be off by one hour during winter, starting November 1, 2026. Planned for FME 2026.4. (FMEFORM-38773)
  • FME Flow schedules and automations: see Known Issue: FME Flow Schedules Run Late After Canadian Time Change.

Additional Resources

Was this article helpful?

We're sorry to hear that.

Please tell us why.