Introduction
Safe Software periodically releases hotfixes for FME Flow to address specific issues outside of the normal release cycle. Hotfixes are delivered as a .zip package and installed using a provided installer script. This article answers common questions about receiving, installing, and managing FME Flow hotfixes.
If you have questions not covered here, please contact our support team.
FAQ
What is an FME Flow hotfix?
An FME Flow hotfix is a targeted patch that replaces one or more files in your FME Flow installation to resolve a specific issue, without requiring a full version upgrade. Hotfixes are delivered as a .zip package containing the patch files, a plain-English readme.txt describing what the hotfix changes and why, and an installer script that handles the process automatically.
What is included in an FME Flow hotfix package?
An FME Flow hotfix .zip package contains the following files:
-
hotfix.sh(Linux) orhotfix.bat(Windows): The installer script you run -
readme.txt: A plain-English description of what the hotfix changes and why -
patch.spec: The machine-readable patch definition used by the installer -
payload/: The replacement files that will be installed -
manifest.sha256: Integrity checksums to verify the package hasn't been tampered with
Read readme.txt before running the installer to understand what will change on your system.
What are the prerequisites before installing an FME Flow hotfix?
Before running the FME Flow hotfix installer, confirm the following:
- Your FME Flow version matches the hotfix: The installer checks this automatically and will refuse to proceed if there is a mismatch.
-
You have administrator or root access on the server: On Linux, run the installer with
sudo. On Windows, use an elevated (Administrator) command prompt. - Python 3.8 or newer is available: The installer first looks for the Python bundled with FME Flow, then falls back to your system Python. If neither is found, the installer aborts with a clear error message.
How do I install an FME Flow hotfix?
1. Download Patch
Download and unzip the Patch File. Be sure to download the correct .zip file according to your FME Flow version.
2. Backup FME Flow
We recommend backing up your FME Flow instance before applying the patch. A full backup is optional, but is best practice. See Backup & Restore FME Flow documentation.
3. Stop the FME Flow Services
Before continuing, stop FME Flow System Service
4. Deploy Hotfix
On Windows:
Open an administrative command prompt. Change the directory to the location where the package files have been extracted (i.e. cd <hotfix_dir>)
Run the command: .\hotfix.bat install
Confirm that the hotfix deployed successfully. The previous command output should include "install complete: fmeflow"
On Linux:
Using the terminal, cd to the location where the package files have been extracted (i.e. cd <hotfix_dir>)
Run the command: sudo FME_FLOW_HOME=<FME_FLOW_INSTALL_DIR> ./hotfix.sh install
Where <FME_FLOW_INSTALL_DIR> is the base dir of where FME Flow was installed (default location on Linux is /opt/fmeflow)
Confirm that the hotfix deployed successfully. Previous command output should include "install complete: fmeflow"
5. Upgrade FME Engine(s) - Optional
Download the appropriate FME Engine installer for your version of FME Flow. Follow the steps in Upgrade FME Engine Only
6. Restart FME Flow Services
Restart FME Flow System Service
How do I know if the FME Flow hotfix installed successfully?
The installer exits with a code that indicates the outcome. An exit code of 0 means the hotfix installed successfully. An exit code of 1 means an expected failure occurred — for example, a version mismatch or a failed integrity check — and the system has been automatically rolled back to its pre-install state; the error message explains what to fix. An exit code of 2 means an unexpected failure occurred; in this case, attach the log file to a support ticket and contact Safe Software support.
What happens if an FME Flow hotfix install fails partway through?
If an FME Flow hotfix install fails at any point, the installer automatically rolls back all changes made before the failure. Your system is returned to its exact pre-install state. The log file and a backup copy of the original files are preserved so you or Safe Software support can review what happened.
How do I check whether my installed FME Flow hotfixes are still intact?
To audit the state of your installed FME Flow hotfixes, run the following command from the hotfix installer directory:
On Windows (elevated command prompt):
hotfix.bat check
On Linux:
sudo ./hotfix.sh check
This is a read-only operation — it will not change anything on your system. Each hotfix is reported as either OK or BROKEN.
What does BROKEN mean when checking FME Flow hotfix state?
A BROKEN result from hotfix.sh check means the installer's records no longer match the files on disk. The most common cause is uninstalling, reinstalling, or repairing FME Flow after the hotfix was applied, which overwrites the patched files with their originals. It can also happen if a patched file is manually modified.
A BROKEN status does not mean FME Flow itself is broken — it means the hotfix patch is no longer in effect and needs to be re-applied. Use the repair command to fix this; see How do I re-apply FME Flow hotfixes after reinstalling or repairing FME Flow? below.
How do I re-apply FME Flow hotfixes after reinstalling or repairing FME Flow?
If FME Flow was reinstalled or repaired and your hotfixes are now showing as BROKEN, run the repair command from the hotfix installer directory:
On Windows (elevated command prompt):
hotfix.bat repair
On Linux:
sudo ./hotfix.sh repair
This re-applies every broken hotfix in the order they were originally installed. If a newer hotfix already supersedes an older broken one, the older one is skipped automatically — the newer hotfix's version of those files takes precedence.
How do I uninstall an FME Flow hotfix?
When a hotfix is installed, the installer saves a copy of itself for later use. To uninstall a hotfix, locate the saved installer copy and run the uninstall command.
The saved installer is located at:
-
Windows:
%ProgramData%\Safe Software\FMEFlow\hotfixes\<fme-version>\installers\<hotfix-name>.zip -
Linux:
/var/lib/fmeflow/hotfixes/<fme-version>/installers/<hotfix-name>.zip
Extract the saved zip and run:
On Linux:
sudo ./hotfix.sh uninstall --name <hotfix-name>
The uninstaller restores all original files exactly as they were before the hotfix was applied, including file permissions and ownership.
Why is the FME Flow hotfix uninstall command being refused?
The FME Flow hotfix uninstaller will refuse to proceed in the following situations:
- The hotfix is not currently installed (it was already removed, or was never installed).
- Another installed hotfix depends on the one you are trying to remove — uninstall the dependent hotfix first.
- Another installed hotfix supersedes the one you are trying to remove — uninstall the superseding hotfix first, then remove this one.
- The integrity check has detected broken state — run
hotfix.sh repairbefore attempting to uninstall.
The error message will identify which other hotfix is blocking the operation.
Can multiple FME Flow hotfixes be installed at the same time?
Yes, multiple FME Flow hotfixes can be installed on the same server. The installer tracks each hotfix's install order and enforces dependency relationships between them. A hotfix may require another hotfix to be installed first (depends), or it may replace an older hotfix entirely (supersedes). The installer enforces these rules automatically and will tell you if a required hotfix is missing or if an installation order conflict exists.
What happens to installed FME Flow hotfixes after upgrading FME Flow to a new version?
FME Flow hotfixes are version-specific. After upgrading FME Flow, the installer treats the new version as a clean slate — your previous hotfix records are preserved at the prior version's path but are not active under the new version. You will need to re-apply any hotfixes that Safe Software has reissued for the new version. Hotfixes built for the old version will not install against the new one; the installer's version check prevents this.
Where are the FME Flow hotfix log files stored?
Each hotfix installer run produces a timestamped log file. Log files are stored at:
-
Windows:
%ProgramData%\Safe Software\FMEFlow\hotfixes\<fme-version>\logs\ -
Linux:
/var/lib/fmeflow/hotfixes/<fme-version>/logs/
When opening a support ticket for a hotfix issue, attach the most recent log file for the affected hotfix.
How do I see which FME Flow hotfixes are currently installed?
To list all currently installed FME Flow hotfixes, run:
On Windows (elevated command prompt):
hotfix.bat list
On Linux:
sudo ./hotfix.sh list
This prints all installed hotfixes in install order, including the version, install timestamp, and any dependency or supersession relationships. If no hotfixes are installed, it prints no hotfixes installed.
What should I do if the FME Flow hotfix installer state is unrecoverable?
If your hotfix records are corrupted and cannot be repaired — for example, because the saved installer files are missing — you can reset the installer's state as a last resort:
On Windows (elevated command prompt):
hotfix.bat reset-state
On Linux:
sudo ./hotfix.sh reset-state
This archives (does not delete) the existing state directory and starts fresh. Important: this command does not undo any patches already applied to FME Flow — it only clears the installer's records of them. If you need to roll back patches before resetting, uninstall them first, or restore files manually from the archived backup directory.