Rule checking


When you run a job, SmartSwitch checks the job against the rules in the rules table in descending order, looking for the first possible match.  


Result

Description

FORCE_NO_SWITCH

SmartSwitch forces the job to run with UNLOAD PLUS.

ALLOW_SWITCH

SmartSwitch switches the job to BMC AMI Unload if both of the following conditions are satisfied:

  • BMC AMI Unload supports the Db2 object types in the job.
  • BMC AMI Unload supports the functions in the job.

REPORT_SWITCH

Smartswitch reports whether the job can be switched to BMC AMI Unload. UNLOAD PLUS will finish processing the job.

When running REPORT_SWITCH, one of the following results appears in the BMCHIST table:

Result

Description

NGTGO 

SmartSwitch switches the job to BMC AMI Unload if you select the ALLOW_SWITCH rule. If you select the REPORT_SWITCH rule, UNLOAD PLUS processes the job. For information about the REPORT_SWITCH rule, see REPORT_SWITCH.

NGTNOGO

SmartSwitch does not switch the job to BMC AMI Unload if you select the ALLOW_SWITCH rule. UNLOAD PLUS processes the job.

  • If the job does not match any rules in the rules table, or the rules table contains no rules, SmartSwitch uses the following implied rule and determines that UNLOAD PLUS should execute the job:

    LPAR  SSID  AUTHID   DBNAME    SPNAME    OBJTYPE  UTILITY  RULE
    ------------------------------------------------------------------------
    %     %     %        %         %         ALL      ALL      FORCE_NO_SWITCH
  • If BMC AMI Unload cannot run the job, SmartSwitch determines that the PLUS utility should run the job with a message confirming this determination. 

    For more information, see Limitations.

    BMC AMI Unload cannot currently load XML tables. If you are running a job that contains an XML table, SmartSwitch determines that UNLOAD PLUS should run the job, even if the matching rule specifies ALLOW_SWITCH. If a future enhancement enables BMC AMI Unload to load XML tables, SmartSwitch will then switch the job to BMC AMI Unload in this situation.  For more information about switching, see How-the-switch-occurs

Important

 REPORT_SWITCH rule

You can test whether SmartSwitch would switch a PLUS utility job to the corresponding BMC AMI Utilities without actually performing the switch. This enables you to see how many jobs would successfully switch to the BMC AMI Utilities if you selected the ALLOW_SWITCH rule.

To use this feature:

  1. Ensure that you installed BMC AMI Unload and the NGTSS is running.
  2. In BMC AMI Command Center for Db2enter REPORT_SWITCH in the Rule column of the SmartSwitch rules table. This rule behaves in the same way as the ALLOW_SWITCH rule except that it does not cause the BMC AMI Utilities to process the job.

In all cases, the contents of the COMMENT column for the matching rule is displayed in a message and in UNLOAD PLUS SYSPRINT.

The following flowchart summarizes the rule-checking process:

SmartSwitch syntax diagram.png 

Examples

These examples are based on the following rules table:

LPAR  SSID  AUTHID   DBNAME    SPNAME    OBJTYPE  UTILITY  RULE
------------------------------------------------------------------------
SYSB  DB2P  RDARKB%  EMPLOYEE  PAYROLL   ALL      ALL      ALLOW_SWITCH
SYSB  DB2P  RDARKB%  EMPLOYEE  PAY%      ALL      ALL      FORCE_NO_SWITCH
%     %     %        EMPLOYEE  %         ALL      REORG    ALLOW_SWITCH
%     %     %        EMP%      BENE%     ALL      LOAD     ALLOW_SWITCH
  • This example assumes that RDARKB or RDARKB% is running the reorganization.
  • If you reorganize table space EMPLOYEE.PAYROLL on LPAR SYSB in SSID DB2P, the job switches to BMC AMI Utilities because it matches the first rule. Although your reorganization also satisfies the second rule (which specifies FORCE_NO_SWITCH), the first rule takes precedence because it is more restrictive than the second rule.
  • If you reorganize table space EMPLOYEE.PAYHIST on LPAR SYSB in SSID DB2P, the job does not switch to BMC AMI Utilities because it matches the second rule.

 

Tip: For faster searching, add an asterisk to the end of your partial query. Example: cert*