Phoenix Software Logo

October 15, 2010

(E)JES customers,

IBM APAR OA33040 changes the way JES3 counts SYSIN pointer records using an upward incompatible approach as described by the following APAR text:

   In addition, module IATDMDT was changed to stop including 
   SYSIN pointer records in the record counts stored in DATLOREC
   (IATYDAT). Because the DATLOREC count is saved on spool,
   POINT macros using relative record numbers as arguments for 
   JESJCLIN files created before applying this fix may establish 
   position incorrectly.

The above text documents incompatible processing for programs accessing JESJCLIN created prior to OA33040 versus that created after OA33040. This incompatibility also affects (E)JES users that browse the information contained within JESJCLIN.

IBM confirms there is no way for a program to know which counting technique to use since JES3 doesn't indicate whether a job's JESJCLIN was created before or after applying OA33040. No matter which technique is employed, some jobs will be processed incorrectly. It is assumed that over time JESJCLIN created prior to OA33040 will be purged through normal SPOOL data attrition.

This week, Phoenix Software International released the following service that changes (E)JES' JES3 SPOOL block index processing to no longer count SYSIN pointer records. This service pre-REQs the IBM PTFs for APAR OA33040.

Service Item PTFs
V480.0001 PEJ0682,PEJ0683,PEJ0684,PEJ0685,PPX0027
V470.0014 PEJ0677,PPX0028
V460.0026 PEJ0678,PPX0029
V450.0030 PEJ0679

With this service applied, (E)JES will correctly process JESJCLIN created after OA33040. Unfortunately, older (pre-OA33040) JESJCLIN will not be processed correctly.

The following matrix shows the behaviors we observed during our testing:

Job Created... (E)JES Adaptation
Not Applied Applied

Prior to OA33040

Normal browser: works as expected.

JCL browser: works as expected.

Normal browser: contains extraneous *MSR* records.

JCL browser: OK for “short” job stream; long (multi-block) job stream contains duplicate records and/or missing records at the end.

After OA33040

Normal browser: missing records plus false *EOF* indicators.

JCL browser: missing records.

Normal browser: works as expected.

JCL browser: works as expected.

Phoenix Software International fully endorses IBM's attempt to modernize JES3 SPOOL to support internal control records that are not displayed to customers. However, we believe the approach that was taken with OA33040 was sub-optimal.

We have alerted IBM to the service disruption APAR OA33040 has caused our customers, or may cause customers that have not yet installed it, and provided JES3 Development with a design suggestion for how IBM and ISVs can work together to modernize JES3 to support non-displayable SPOOL control records in a manner that will be completely transparent to our mutual customers.

Careful consideration should be given as to whether this particular IBM APAR should be applied at your site.


Phoenix Software International