Protecting against PIF failure

Because Workload Automation Programming Language uses the HCL Workload Automation for Z programming interface (PIF), it is vulnerable to a few of types of problem against which you can protect.

The controller must be available for any job to use the PIF. If you run a Workload Automation Programming Language job while the controller is down, any PIF processing fails. Because occasionally the controller might fail and cause a Workload Automation Programming Language job to fail, for planned controller downtime you can protect against failure with the following procedure:

  1. Ensure that all your production Workload Automation Programming Language jobs are controlled by HCL Workload Automation for Z. For Workload Automation Programming Language jobs that are submitted externally, ensure that they are submitted with TYPRUN=HOLD and have a corresponding ETT rule to trigger an application to control them. This ensures that no Workload Automation Programming Language job starts running while the controller is unavailable. Any job submitted while the controller is down will wait, and, providing that Event Data sets are adequately sized, will be released automatically after the controller is ready. Any Workload Automation Programming Language jobs that fail due to unexpected failure of the controller are seen in error when the controller is restarted. This method requires the EWTROPTS option HOLDJOB keyword setting to USER.
  2. Create a special resource specifically for use of the programming interface. Add this resource to every Workload Automation Programming Language job, planned and event-triggered, with a usage of SHR. For an unplanned but controlled shutdown of the controller, you can then make this resource unavailable and monitor the In-Use list (5.7) for this resource to determine when it is safe to take the controller down. On restart of the controller, after the resource is made available again, Workload Automation Programming Language processing can continue safely.

Some HCL Workload Automation for Z planning functions make heavy use of the current plan and long-term plan. These can cause failure due to contention, or logical failure with elements being changed around the Workload Automation Programming Language job. It is recommended that you avoid running Workload Automation Programming Language jobs against the Current Plan Extend, Replan, Long-Term Plan Extend, and Modify. This can be done by adding the programming interface resource to these planning jobs with Exclusive usage.