# Program temporary fix

In IBM terminology, a Program temporary fix or Product temporary fix (PTF), sometimes depending on date, is a single bug fix, or group of fixes, distributed in a form ready to install for customers.
A PTF normally follows an APAR (Authorized Program Analysis Report), and where an "APAR fix" was issued, the PTF "is a tested APAR" or set of APAR fixes. However, if an APAR is resolved as "Fixed If Next" or "Permanent Restriction" then there may be no PTF fixing it, only a subsequent release.

## PTF installation

Initially, installations had to install service via a semi-manual process.
Over time, IBM started to provide service aids such as IMAPTFLE and utilities such as IEBEDIT to simplify the installation of batches of PTFs. For OS/360 and successors, this culminated in System Modification Program (SMP) and System Modification Program/Extended (SMP/E).
For VM, this culminated in Virtual Machine Serviceability Enhancements Staged (VM/SP SES) and VMSES/E.
For DOS/360 and successors, this culminated in Maintain System History Program (MSHP)

## PTF usage

PTFs used to be distributed in a group on a so-called Program Update Tape (PUT) or Recommended Service Upgrade (RSU), approximately on a monthly basis. They can now be downloaded straight to the system through a direct connection to IBM support. In some instances IBM will release a "Cumulative PTF Pack", a large number of fixes which function best as a whole, and are sometimes codependent. When this happens, IBM issues compact discs containing the entire PTF pack, which can be loaded directly onto the system from its media drive.
One reason for the use of physical media is size, and related (default) size limits. "By default, the /home file system on VIOS (Virtual I/O Server) for System p is only 10GB in size." If the "Cumulative PTF Pack" is larger than the default, "If you try (to) FTP 17GB of ISO images you will run out of space."
In z/OS, the PTFs are processed using SMP/E (System Modification Program/Extended) in several stages over a course of weeks. Each PTF may include HOLDDATA, in which case it is known as an exception SYSMOD. In rare cases an installation may install a single PTF, but normally it will install all available service except PTFs excluded by, e.g., aging policies, HOLDDATA. Details vary from installation to installation, but a simple service cycle would involve these steps:
* Download the most recent HOLDDATA
* RECEIVE (load) the service and HOLDDATA to the Consolidated Software Inventory (CSI)
* APPLY CHECK the service and HOLDDATA to list exception SYSMODs, verify that necessary prerequisites are available,and to list potential problems, e.g., errors.
** Review exception SYSMODs for, e.g., ACTION, DOC, holds.
** Update documentation to reflect the exception SYSMODs, and take any necessary actions
** Order and RECEIVE any missing prerequisites.
** RESTORE, REJECT, rework and re-APPLY any local exits or modifications affected by the service.
* APPLY the service to one system in a cluster (if available), and review the system's performance over multiple weeks to ensure it does not hinder your productivity or functionality
** Selectively BYPASS HOLDDATA when appropriate
* RECEIVE and APPLY the service to the production system and monitor its effects for several weeks
If the system is adversely affected by the service, a system administrator may sometimes selectively RESTORE (un-apply) it and seek further support from IBM. However, if no problems are found after the service is applied, it can be permanently installed, ACCEPTed (committed) to the system.
These repairs to IBM software are often in response to APARs submitted by customers and others and acted on by IBM, and are a common first step to resolving software errors. It is generally expected by the customer that the problem would be fully corrected in the next release (version) of the relevant product.

## Comparison to APAR

At times IBM software has a bug.
Once IBM has ascertained that the cause is not one of
* third-party hardware
* non-IBM software -or-
* user-specified configuration errors,
IBM support staff, if they suspect that a defect in a current release of an IBM program is the cause, will file a formal report confirming the existence of an issue. This is referred to as an Authorized Program Analysis Report (APAR). See "APARs and PTFs". IBM.
APARs also include
* information on known workarounds
* information on whether a formal fix is scheduled to be included in future releases, and
* whether or not a Program Temporary Fix (PTF) is planned.

## Summary

There are at least 2 levels of fix:
* The APAR may result in an "APAR fix."
* a permanent correction called a PTF.
The focus of the "APAR fix" is "to rectify the problem as soon as possible" whereas the PTF "is a tested APAR... The PTF 'closes' the APAR. " Prior to that, an APAR is "a problem with an IBM program that is formally tracked until a solution is provided.”

## Humor

Customers sometimes explain the acronym in a tongue-in-cheek manner as permanent temporary fix or more practically probably this fixes, because they have the option to make the PTF a permanent part of the operating system if the patch fixes the problem. One explanation of Program Temporary Fix says it's temporary, just until the next ice age.