The "Gotcha" File
A Work in Progress
- If you don't check for bad return codes, your batch job will keep running
until a job step abends. See Condition Code
Checking for information on how to avoid the JCL COND parameter.
- Unless you specify the EXIT option, FTP exits with return code zero even if
it didn't work. See Using FTP in Batch Mode
for a sample.
- Often programmers don't check the return codes from library or
subroutine calls that "always" work. This may make it more difficult to
determine what the original problem was. See also point # 1 above.
- If you are using the LISTDSI function in REXX or CLIST code, specify either
RECALL (always recall the dataset) or NORECALL (never recall the dataset).
If you don't, LISTDSI will only recall the dataset if it has been migrated to
- Applying maintenance directly to a library managed by LLA can quickly lead
to trouble if you are not careful. In particular, link-edit functions including
EXPAND will create a new member, while ZAP updates the member in place. This can
result in some changes not appearing in the new member.
- JCL overrides for DDDEFs in SMP/E can be used to temporarily change
the SMP/E target library location. However, CALLLIB processing and DDDEFs
specified in the SYSLIB DDDEF concatenation will continue to use the SMP/E DDDEF. If you want to override a target library which is also
included in SYSLIB, you may also need to include a JCL override for all
- Automatic formatting of numeric values by REXX can cause unexpected results.
For example, a Julian date intended to appear in the format yyddd can appear as
21 (January 1, 2002) due to leading zeroes being suppressed if yy and ddd are
computed separately and then combined. See
Formatting with REXX for a hint on how to deal with this.
- the default behaviour for FTP is to truncate a record which would be longer than
the current LRECL because there is no new-line character (if transfer type is not binary).
A TRUNCATE setting has been added to allow a return code to be set if truncation occurs.
The default is to not set the return code.
- the FTP client provided with current versions of Windows has a
hard-coded timeout after 60 seconds of inactivity. This can produce
inconsistent results when accessing z/OS tape datasets or disk
datasets migrated to tape. The symptom on the Windows client side is
the message "Connection reset by peer".
For More Information
Visit "Stupid JCL Tricks" or
More things that go Bump in the Night here.
See also Installation Verification Programs for
procedures to try and trap bumps in software components.
Comments or suggestions can be
sent to the author.