This document contains official content from the BMC Software Knowledge Base. It is automatically updated when the knowledge article is modified.
UNLOAD PLUS for DB2
UNLOAD PLUS for DB2
SmartSwitch feature of BMC REORG PLUS for Db2, BMC UNLOAD PLUS for Db2 and BMC LOADPLUS for Db2
How to diagnose, track and control SmartSwitch processing? This article describes several useful tips and tricks to diagnose, track and control SmartSwitch processing
This article describes some tips and tricks to diagnose and track SmartSwitch processing:
To get diagnostic messages from SmartSwitch SYSIN parser add this PARM:
Will write some BMC50998I messages for diagnostic
The SmartSwitch Rules are sorted in descending order by LPAR, SSID, AUTHID, DBNAME, SPNAME, OBJTYPE, and UTILITY and the rules are evaluated in that sequence. To see which rules were evaluated and which one match, add this DD:
BMCSSRUL DD SYSOUT=*
An X next to the rule in the BMCSSRUL output indicates which rule was selected. A Y next to the rule indicates a rule that was considered.
The program that reads the Rules table is D2USSRUL, you can track it with BMC APPTUNE for Db2 or your favorite SQL Monitor.
You can use the BMCSSOFF DD statement (PTF BQU2519 applied) to disable the SmartSwitch feature at the Job level.
Specify the following syntax in your JCL:
//BMCSSOFF DD DUMMY
By default, SmartSwitch is not tested during the installation IVP. If you plan to use SmartSwitch and you want to IVP it, you can follow this approach:
1. Run $770IVP to test the classic utilities.
2. Create a SmartSwitch ALLOW_NGT rule using BMC Workbench, SQL or any table editor for DB BMCIVPDB
3. Re-run $770IVP to test SmartSwitch
Generating NGT equivalent syntax:
SmartSwitch allocates to DD with equivalent NGT JCL and SYSIN:
• NGTSSJCL – Writes JCL and SYSIN. SPE Aug 2018 (PTF BQU1423 applied).
• NGTSSSYN – Writes only SYSIN. SPE May 2019 (PTF BQU2133 applied).
Both DD are dynamically allocated to SYSOUT(*) by default.
The SmartSwitch tracking table (CMN_BMCSSTRACK) was introduced in SPE July 2019 (PTF BQU2215 applied) and provides information on jobs executed via SmartSwitch. The table lists the following information:
Whether a job run under the REPORT_NGT rule can switch from the classic utility to the NGT utility
Whether the job run under the ALLOW_NGT rule actually switched
The reason a job cannot or did not switch (if applicable)
The combination of RULE and SWITCHED columns in this table can give you 5 possible values:
A, Y means the job switched (ALLOW_NGT)
A, N means the job did not switch (even with ALLOW_NGT, review reason)
F, N Always N for FORCE_CLASSIC (switching is not enabled, will run as classic)
R, Y means the job can switch (REPORT_NGT)
R, N means the job cannot switch (REPORT_NGT, review reason)
You can use SQL queries to this table similar to this one below:
WHEN 'A' THEN
WHEN 'R' THEN
WHEN 'F' THEN
END AS RULE,
COUNT(*) AS COUNT
DATE(INSERT_TIMESTAMP) > CURRENT DATE - 1 MONTHS
UTILNAME, RULE, SWITCHED
Option module parameters:
SmartSwitch adds new option module parameters to the BMC classic utilities option modules xxx$DOPS.
SMARTSWITCH: can be used to bypass SmartSwitch processing altogether. Default is to enable SmartSwitch. Set SMARTSWITCH=NO to bypass SmartSwitch if wanted.
SSREPORT (PTF BQU2214 applied): can be used to control which jobs to track. There is no syntax override for the SSREPORT option. Default is to track jobs that run under the REPORT_NGT rule only. Setting it to ALL tracks all SmartSwitch jobs
SSIGNRPAUSE (PTF BQU2542 applied): Can be used with LOADPLUS to ignore the PRELOAD PAUSE keyword and continue as if PRELOAD CONTINUE were in effect when using SmartSwitch and switching to NGT. The values are as follows:
NO: If PRELOAD PAUSE is specified it is honored and switch to NGT does not occur. This is the Default value, if you do not update the options module.
YES: If PRELOAD PAUSE is specified and a switch to NGT occurs then PRELOAD PAUSE is ignored.