COPYRIGHT (C) 1984-2007 MERRILL CONSULTANTS DALLAS TEXAS USA
CHANGE 12.12
=========================member=CHANGE12================================
/* COPYRIGHT (C) 1984-1995 MERRILL CONSULTANTS DALLAS TEXAS USA */
This is MXG Version 12.12A, dated Mar 20, 1995, thru 12.328.
MXG Version 12.12A is dated Mar 20, 1995, thru Change 12.328
MXG Version 12.12 was dated Mar 1, 1995, thru Change 12.314
MXG Newsletter TWENTY-SEVEN, Mar 1, 1995, thru Change 12.306
MXG Version 12.07 was dated Feb 6, 1995, thru Change 12.290
MXG Version 12.06 was dated Jan 9, 1995, thru Change 12.240
MXG Version 12.05 was dated Nov 20, 1994, thru Change 12.218
MXG Version 12.04A was dated Oct 23, 1994, thru Change 12.192
MXG Version 12.04 was dated Sep 30, 1994, thru Change 12.169
MXG Version 12.03A was dated Aug 17, 1994, thru Change 12.140
MXG Newsletter TWENTY-SIX, Aug 4, 1994, thru Change 12.128
MXG Version 12.03 was dated Aug 4, 1994, thru Change 12.128
MXG Version 12.02 was dated Jul 4, 1994, thru Change 12.084
MXG Version 12.01A was dated Jun 15, 1994, thru Change 12.056
MXG Version 12.01 was dated Jun 1, 1994, thru Change 12.047
MXG Version 11.11 was dated Mar 26, 1994, thru Change 11.361
MXG Newsletter TWENTY-FIVE, Mar 26, 1994, thru Change 11.347
See member NEWSLTRS for text of Newsletter TWENTY-SEVEN of 1Mar95.
Contents:
I. MXG Software Version 12.12A, dated Mar 20, 1995.
III. MVS Technical Notes not printed in Newsletter TWENTY-SEVEN.
VIII. Incompatibilities and Installation of MXG 12.12A.
1. Members IMAC7072 IMAC74 IMACDB2 IMACPDB IMACWORK
IMACTMNT MONTHBLD WEEKBLD IMACCICS TYPEQAPM changed.
2. Installation instructions.
IX. Online Documentation of MXG Software.
X. Changes Log
I. MXG Software Version 12.12A, dated Mar 20, 1995, contains these major
enhancements:
Major enhancements added in MXG 12.12A dated Mar 20, 1995:
Twelve MXG 12.12 members had errors that are now fixed:
ANALCNCR ANALDB2C ANALDB2R ANALPATH ANALTALO IMACICSA
TRNDTALO VMAC80A VMAC110 VMACILKA TYPEMON8 TYPETMON
Support for Memorex/Telex LMS Version 3.1 (INCOMPATIBLE).
Major enhancements added in MXG 12.12 dated Mar 1, 1995:
Support for OS/400 AS/400 Version 3.1.0 INCOMPATIBLE.
Support for PR/SM APAR OW078986 adds "MVS Wait" to "LPAR Waits"
Support for Type 99 Subtype 1 added.
Support for CICSAO availability measurement SMF written by CICSAC.
Support for Mitchem's ACC/SRS user SMF record.
Support for LEGENT SAR Cross Memory Session Logoff user SMF record.
Support for Network Systems DXE channel RDS user SMF.
Support for Velocity Software XAMAP Version 2.2.
Support for CICSAO user SMF record for CICS availability.
Support for Boole & Babbage IMF Version 3.1 (for IMS 5.0).
Support for VAX/VMS Accounting and Performance data.
Amdahl's MDF now populates TYPE70PR/ASUM70PR with valid CPU time.
Candle's ITRF product-error corrections have been validated.
RACF TYPE80A enhanced to decode RACF commands of interest.
REXX program to convert DB2 GTF records to SMF format for MXG.
ANALPGNS reports CPU utilization by Performance Group.
ANALDB2R Support for DB2 Version 3.1 DB2PM-like reports.
ANALMTP Analysis of Tape Mounts Concurrently Waiting.
ANALRMFR enhanced, selection by storage class, device, LCU added.
XMXGSUM replacement for VMXGSUM is ready for full use.
Major enhancements added in MXG 12.07 dated Feb 6, 1995:
Support for TCP/IP Version 3.1 (incompatible).
Support for RMDS Version 2.1 (incompatible).
Support for TPX 4.0 (compatible with one line edit).
Support for RMF Monitor III ("ZRB") for MVS/ESA 4.3 - partial.
Support for Xerox Print Service Manager XPSM SMF record.
Support for BGS's BEST/1 I/O Monitor SMF record.
Support for Boole & Babbage CMF VSAM MRR records.
%ANALCNCR algorithm for concurrency analysis (inits, tapes, etc.)
Circumvention for CACHE90 zero observations with RAMAC devices.
New TYPE72DL dataset for MVS/ESA 5.1 Goal Mode
Major enhancements added in MXG 12.06 dated Jan 9, 1995:
Support for NETSPY 4.5. Compatible except for LU6.2 NSPYAPPL data.
Support for Innovation Processing's IAM user SMF record.
VM/ESA 2.2 Scheduler records supported.
Invalid DB2 type 101 SMF record workaround (fix is APAR PN63234).
Revised ANALPATH reporting for MVS I/O Path analysis.
Final (?) enhancements for VMXGSUM parsing of all dataset options.
Major enhancements added in MXG 12.05 dated Nov 20, 1994:
Support for MQM 1.1.2 Performance Statistics type 115 SMF record.
Support for MQM 1.1.2 Accounting type 116 SMF record.
Support for Omegamon for CICS V100 and V300 SMF.
Support for Landmark Monitor for MVS Release 1.3 enhanced.
Support for InfoAccess Release 5.1 user SMF record.
Support for HSM APAR OW05988, adds CPU time to FSR!
Support for Sterling Software's ASM V3.0.0 type 39 records.
Support for CA/SQL user SMF record (same as IDMS/R records).
Support for S/390 Parallel Query Server SPQS SMF 123 started.
Correction for NPM 2.2 NPMVSaaa datasets.
CICS Utility UTILCICS now identifies type 110s from Omegamon.
New dataset PDB.TYPE72SC for Goal Mode Server data.
Type 42 technical note, removal of GMT offset calculation.
Major enhancements added in MXG 12.04A dated Oct 23, 1994:
Support for Omegamon for VTAM V160 (Incompatible).
Correction to MXG 12.04-only errors:
Type 28 Input Statement EXCEEDED error message.
MXG Tape Unload caused return code 4, extra members unloaded.
UTILCICS failed with syntax error
Correction to SAP Accounting under IMS.
Correction to NETSPY Token-Ring TIC-UTIL in NSPYTR - was too large.
Correction to TYPE42 STARTIME/ENDTIME - may be on GMT clock.
Technical note on Memory measurement in MVS Technical Notes.
Major enhancements added in MXG 12.04 dated Sep 30, 1994:
All "Chapter 99 CodeSharks" now honored in ACHAP99.
Support for CICS/ESA 4.1.0 (compatible) adds important new measures.
Support for NPM 2.2 (compatible, but new subtypes).
Support for LEGENT's TSO/MON 6.1 (compatible).
Support for Landmark TMON Monitor for CICS/ESA 1.3 (incompatible).
Support for Landmark TMON Monitor for DB2.
Support for STK ICEBERG SMF record subtype 5.
Support for CA's TELEVIEW user SMF record.
Support for APARs OW00484/UW06888/others corrupt TYPE1415 variables.
DB2STATS variables QB3Taaaa/QB4Taaaa corrected.
TYPE37 Short LAND segment INPUT STATEMENT EXCEEDED corrected.
Major enhancements added in MXG 12.03A dated Aug 17, 1994:
Support for APAF 2.2 (incompatible).
Support for TLMS Release 5.4 (incompatible).
Support for BETA93 1.6.1 validated (it was incomplete in MXG 12.03).
Further DB2 3.1 corrections in TYPEDB2 and TYPE102 support.
Major enhancements added in MXG 12.03 dated Aug 4, 1994:
Support for MVS/ESA 5.1 Type 99 Subtype 2 record.
Support for LEGENT's ASTEX Release 2.0.
Support for UniKix Release 4.1 Binary File
Support for EMPACT's HIPER-CACHE Version 1.1.1.
Support for SMF Type 50 VTAM Tuning APAR OW04453.
Support for RSD's WSF Release 3.5.1.
Support for Omegamon II for SMS V100/V110.
Support for BETA93 user SMF record.
MXG Tape Mount and Tape Allocation Monitor errors now works!
Correction for NPM Release 2.0 subtypes 214 thru 219.
Additional DB2 3.1 Trace IFCIDs supported.
Analysis ANALDB2C matches CICSTRAN observations with DB2ACCT.
Major enhancements added in MXG 12.02 dated Jul 4, 1994:
MXG Tape Mount and Allocation Monitor was revised, new reports.
Support for IBM's CRR 1.6 (3990-3 and 3990-6) (incompatible).
Support for DFSMS 1.2 changes to DCOLLECT (compatible).
Support for MEMO subtype 6 record.
Support for TCP/IP APAR PN34837 new field (compatible).
Support for MVS APAR OW00884/UW06821 - (no impact, see MVS Notes).
Support for IMS 4.1 Log Records (see IMS Technical Notes)
Major enhancements added in MXG 12.01 dated Jun 15, 1994:
Support for MVS/ESA 5.1 many new datasets (Goal Mode Incompatible).
Support for Measured Usage SMF Record 89 and changes to type 30.
DB2 Version 3.1 Buffer Pool statistics were incorrect in MXG 11.11.
OPC Version 1.2.0 had INPUT STATEMENT EXCEEDED error with MXG 11.11,
but change 12.002 corrects, plus adds support for split records!
Problem with Cache RMF Reporter Records discussed in Newsletter 25
are actually fixed by MVS APAR OW01787.
ANALDSET/ANALBLSR routines were corrected in Change 12.001.
All of these enhancements are described in the Change Log, below.
Table of availability dates for the IBM products and MXG version:
Availability MXG Version
Product Name Date Required
MVS/ESA 4.1 Oct 26, 1990. 8.8
MVS/ESA 4.2 Mar 29, 1991. 9.9
MVS/ESA 4.2.2 Aug 1991. 9.9
MVS/ESA 4.3 Mar 23 1993. 10.10
MVS/ESA 5.1.0 Jun 24 1994 12.02
MVS/ESA 5.2.0 ??? ?? ???? 13.??
CICS/ESA 3.2 Jun 28, 1991. 9.9
CICS/ESA 3.3 Mar 28, 1992. 10.01
CICS/ESA 4.1 Oct 27, 1994. 12.04
CICS/ESA ?.? ??? ??, ????. 13.??
CRR 1.6 Jun 24, 1994. 12.02
DB2 2.2.0 1990 8.8
DB2 2.3.0 Oct 28, 1991. 10.01
DB2 3.1.0 Dec 17, 1993. 12.04
DB2 4.1.0 ??? ??, ????. 13.??
DFSMS/MVS 1.1 Mar 13, 1993. 11.11
DFSMS/MVS 1.2 Jun 24, 1994. 12.02
NPM 2.0 Dec 17, 1993. 12.03
NPM 2.2 Aug 29, 1994. 12.05
VM/ESA 1.1.1 Dec 27, 1991. 10.01
VM/ESA 2.0 Dec 23, 1992. 10.04
VM/ESA 2.1 Jun 27, 1993. 12.02
VM/ESA 2.2 ??? ??, 1994. 12.06
Table MXG support for non-IBM products:
Availability MXG Version
Product Name Date Required
Landmark
The Monitor for CICS/ESA 1.3 12.12
The Monitor for MVS/ESA 1.3 12.05
Candle
OMEGAMON for CICS V300 User SMF Record 12.05
Boole & Babbage
IMF 3.1 (for IMS 5.1) 12.12
III. MVS Technical Notes not printed in Newsletter TWENTY-SEVEN.
1. APAR OW06770 and QW09814 (PTFs UW10049 and UW14370) correct type 72
wrong values in MVS/ESA 5.1 fields SMF72ACT SMF72SER SMF72MTS
SMF72ITS SMF72CTS SMF72TAT and SMF72STS. Bad values occured in any
interval in which a CICS region was FORCED or a batch job terminated
at end of memory. The bad values were all '7FFFFFFF'x, which in MXG
(being read as PIB4.) is 2,147,483,647!
2. Boole & Babbage CMF 5.1 creates RMF records with incorrect STARTIME
when SYNC is specified, which causes MXG's RMFINTRV dataset to see
incorrect uncaptured CPU times. Boole's fix is BPM5061. Another
symptom is a difference of 1 second between the STARTIME in the type
70 and the STARTIME in the type 71 records.
VIII. Incompatibilities and Installation of MXG 12.12.
1. Incompatibilities introduced in MXG 12.12 (since MXG 11.11):
a- IMACs that were changed (if they exist in your USERID.SOURCLIB, you
must refit your tailoring, starting with the new IMAC member):
IMAC7072 IMAC74 IMACDB2 IMACPDB IMACWORK IMACTMNT
MONTHBLD WEEKBLD IMACCICS
b- The JCL for processing the OPC log requires two new DDNAMES so that
the OPC spanned records can be reconstructed and read by MXG. See
comments in member VMACOPC. Member JCLTEST6 was changed also.
c- The JCL for AS/400 processing with TYPEQAPM requires //QAPMIOPD DD
added. See Change 12.292
d- ASUMTALO was incompatibly changed in MXG 12.12, so early users of
the Tape Mount and Allocation Monitor analysis will need to rebuild
PDB.ASUMTALO (by %INCLUDE SOURCLIB(ASUMTALO) against each PDB that
they want to include), so that TRNDTALO will trend tape allocation.
e- These products were incompatibly changed by their vendor, and they
require MXG 12.12 (or at least the MXG 12.xx indicated):
MVS/ESA 5.1 (Goal Mode) Change 12.034 MXG 12.02
OS/400 Version 3.1.0 Change 12.292 MXG 12.12
TCP/IP Version 3.1 Change 12.257 MXG 12.12
RMDS Version 2.1 Change 12.264 MXG 12.12
Omegamon for VTAM V160 Change 12.186 MXG 12.04A
Landmark CICS Version 1.3 Change 12.151 MXG 12.12
Landmark MVS Version 1.3 Change 12.191 MXG 12.05
APAF 2.2 Change 12.138 MXG 12.12
TLMS Release 5.4 Change 12.136 MXG 12.03A
Cache RMF Reporter 1.6 Change 12.070 MXG 12.12
2. Installation and re-installation procedures are described in detail;
in member INSTALL (which also lists common Error/Warning messages a
new user might encounter), and sample JCL is in member JCLINSTL:
Summary:
a. Install member MXGSAS as JCL Procedure MXGSAS in your PROCLIB.
b. Allocate a 90-cyl PDS: MXG.V1212.MXG.SOURCLIB, and use IEBUPDTE
to read the MXG tape to create the 2500+ member Source Library.
c. Allocate a 1-cyl PDS: MXG.V1212.USERID.SOURCLIB for your site
"Installation Tailoring" Source Library. Installation specific
tailoring (like telling MXG your shift hours, which performance
groups are TSO, CICS, etc.) is done by copying and modifying MXG
source members into V1212.USERID.SOURCLIB.
d. Allocate a 1-cyl SAS Data Library: MXG.V1212.MXG.FORMATS and
execute SAS to create the library of Formats required by MXG.
e. If this is the initial install of MXG, tailor these members into
your MXG.V1212.USERID.SOURCLIB tailoring library:
IMACACCT (Account Length),
IMACSHFT (Shift Definitions),
IMACWORK (Performance Group to Workload mapping), and
IMACSPIN (for BUILDPDB).
Each IMAC member is self-documenting, and IMACAAAA is the index
of all of the IMACs. You should at least scan IMACAAAA to see
the acronyms MXG uses for the many products MXG supports.
e. If re-installing MXG, copy your existing USERID.SOURCLIB library
members into the MXG.V1212.USERID.SOURCLIB. Then, compare the
members in your USERID.SOURCLIB with the list of members that
were incompatibly changed (above, in this section) in this MXG.
If any of the incompatibly changed members exist in your dataset
MXG.V1212.USERID.SOURCLIB, then you must reinstall your site's
tailoring for that IMAC, starting with the IMAC member from the
MXG 12.12 Source Library.
f. EDIT and submit member JCLTEST6 to verify that your tailoring
did not create any errors.
g. EDIT and submit JCLPDB6 to create a Daily PDB for testing. Or
use the TYPE.... members to process specific data sources, use
the ANAL.... members for report examples, the GRAF.... members
for SAS/GRAPH reports.
You have now installed MXG 12.12 in its own set of libraries. When
parallel testing is complete and are ready to implement MXG 12.12
in production, rename your three current MXG Production Libraries
(MXG.MXG.SOURCLIB, MXG.USERID.SOURCLIB, and MXG.MXG.FORMATS) to
(MXG.BACK.MXG.SOURCLIB, MXG.BACK.USERID.SOURCLIB, MXG.BACK.MXG....)
and rename the MXG.V1212.x.y libraries to their Production names!
Again, detailed installation instructions are in member INSTALL
Always read comments in the CHANGES member for compatibility issues, as
well as for any last minute changes.
Whenever you install changes or test a new version of MXG (or even your
own reports), be extra careful to look on the SAS log for any real error
conditions. Search for all occurrences of "ERROR:", "ERROR :", " NOT "
"UNINITIALIZED", "TRUNCATED", "NEVER BEEN", "NOT FOUND", "CONVERT",
"APPARENT", and "NOT CATLGD", as they usually indicate a serious error.
A PROC PRINT and a PROC MEANS of each new MXG-built SAS dataset can help
you to understand their contents, and should be used to examine any
unusually large, negative, or suspicious values. Print all variables in
the dataset, and read the variable's descriptions in its ADOC member.
IX. Online Documentation of MXG Software.
Beginning with MXG 11.11, the contents of the two MXG Books, (the 1984
MXG Guide, and the 1987 MXG Supplement) are contained in the MXG Source
Library, as are all MXG Technical Newsletters and all MXG Changes, so
all MXG documentation is actually online in the software itself; even
the Installation Instructions are online, in members INSTALL/JCLINSTL!
ACHAPxxx members are the text of the 42 chapters from the two MXG books,
to which the text from newsletters and changes has been added. Some of
these chapters are still rough; while some of the chapters have actually
been completely revised, many of these ACHAPxxx are little more than a
concatenation of the two original chapters, often without the figures
or tables. The revision is work still in progress!
Members ADOCxxxx are what were in Chapter FORTY, and should be the first
place you look for information about MXG variables and/or datasets. The
ADOCxxxx members alphabetically describe each dataset and all variables
that are created by product xxxx, the instructions on how to enable that
product, bibliography of the vendor documentation, sample PROC PRINT and
PROC MEANS of real data, references to MXG reports that use these data,
and the MXG member names that you use to process that product. While
this too is work in progress, the most heavily used data sources,
especially the common SMF records, have been revised and are up to date.
There is an IMACxxxx member for every product supported by MXG. Once
you know the xxxx suffix for a product, you then know the names of all
of the MXG members for that product, because of MXG naming conventions:
IMACxxxx - Defines record IDs, and the _Lyyyzzz and _Kyyyzzz macros
that name the dataset(s) created from product xxxx.
ADOCxxxx - "Chapter FORTY" style dataset and variable documentation of
all datasets created from product xxxx, with sample output.
VMACxxxx - The "real" source code member, often extensively commented.
TYPExxxx - Standalone member to test or process product xxxx records.
ASUMxxxx - Summarization example (only for some products)
TRNDxxxx - Trending example (only for some products)
ANALxxxx - Reporting/analysis example (only for some products)
GRAFxxxx - SAS/GRAPH report example (only for some products)
EXyyyzzz - OUTPUT exit for tailoring of each MXG dataset, not used by
most MXG sites, but powerful if needed. There can be more
than one dataset created from one product. The yyyzzz
suffix of the EXyyyzzz member name is the same as the
suffix of "_L" and "_K" macros defined in the IMACxxxx for
its product. See Using the MXG Exit Facilities in ACHAP33.
Member IMACAAAA is an index of all IMACs, and is the best place to begin
to find what xxxx suffix Merrill chose for which product! You can often
find additional documentation by searching members NEWSLTRS or CHANGESS
for the xxxx suffix.
Member CHANGES identifies this Version and Release of MXG Software, and
describes all changes made in this Release, plus new technical notes.
Member CHANGESS contains each of the CHANGES members from each version
of MXG, so this member contains ALL changes ever made to MXG Software.
Since each MXG change lists the names of the members that were added or
altered, names the new product/version supported by a change, or lists
error messages corrected by a change, this member is designed to be read
online (with SPF BROWSE); you can search for specific product acronyms
(CICS, MVS/ESA, etc.), or the MXG member name or anything else. Many of
the changes are actually mini-tutorials, especially for new products.
Member NEWSLTRS contains the text of all newsletters. You can search
NEWSLTRS for product name or acronym to find all of Dr. Merrill's
published and unpublished technical papers, technical notes announcing
enhancements in new operating systems or subsystems, new datasets and
products, important APARs and PTFs, and other technical information of
importance to MXG users. (Since the Change Log that is printed in each
newsletter is in member CHANGESS, it is not repeated in NEWSLTRS.) MXG
Technical Newsletters are typically published twice a year, with one
printed copy sent to each licensed site's technical addressee.
Member DOCVER lists alphabetically ALL datasets and variables that are
built by this MXG Software Version, abbreviated to a line per variable.
Members DOCVERnn are the "delta-documentation" between MXG versions, and
list only those datasets and variables that were added/deleted/changed
by version "nn", so you can identify when a variable/dataset was added.
Finally, remember that MXG is source code, and you can often find your
answer by BROWSING the source members, especially the VMACxxxx members.
The MXG Variable name is frequently the vendor's field name, or the
vendor's field name is often in a comment adjacent to the variable's
INPUT, so you can cross reference MXG to the vendor's documentation.
The migration from print to online is clearly work in progress, but at
least the two books are now machine readable! When all 42 chapters
are completely revised and updated in the source library, I will decide
which, if any, will also be made available in printed form, but the
primary media for all future MXG documentation will be these members of
the MXG source library, which can be immediately updated in each new
version of MXG as changes occur.
X. Changes Log
==========================Changes Log=================================
You MUST read each Change description to determine if a Change will
impact your site. All changes have been made in this MXG Library.
Member CHANGES of the MXG SOURCLIB will always be more accurate than
the printed changes in a Newsletter, because the software tapes are
created after the newsletter is sent to the printer!
Member CHANGES always identifies the actual version and release of
MXG Software that is contained in that library.
The actual code implementation of some changes in MXG SOURCLIB may be
different that described in the change text (which might have printed
only the critical part of the correction that can be made by paper).
Scan each source member named in any impacting change for any comments
at the beginning of the member for additional documentation, since the
documentation of new datasets, variables, validation status, and notes,
are often found in comments in the source members.
Alphabetical list of important changes after MXG 11.11:
Dataset/
Member Change Description
Many 12.034 Support for MVS/ESA 5.1.
Many 12.030 All instances of MSEC8. were removed from MXG.
ACHAP99 12.161 "Chapter 99 CodeSharks" honored.
ANALBLSR 12.001 Batch LSR analysis fails due to errors in ANALDSET.
ANALBLSR 12.080 Batch LSR analysis enhanced.
ANALBLSR 12.185 No BLSR candidates detected when there were some.
ANALCISH 12.035 CICS Shutdown report corrected, design revised.
ANALCISH 12.163 PDB=PDB,TYPE=ALL,SUMMARY=YES produced no reports.
ANALCISH 12.235 Additional DFHSTUP-like CICS Shutdown reports.
ANALCNCR 12.272 Analysis of concurrency - generalized new tool.
ANALDB2C 12.087 Analysis to match CICSTRAN with DB2ACCT.
ANALDB2R 12.078 Using ANALDB2R with PDB= tape was inefficient.
ANALDB2R 12.236 DB2 report PMSQL01 may fail - QWHCTOKN left out.
ANALDB2R 12.250 DB2 Locking Contention Report fails.
ANALDB2R 12.251 DB2 Transit Report fails with NOT SORTED.
ANALDB2R 12.270 PMLOK02 and PMLOK03 now revised.
ANALDB2R 12.305 Support for DB2 Version 3.1 DB2PM-like reports.
ANALDSET 12.001 Syntax error (wrong member migrated).
ANALMTP 12.303 Analysis of Tape Mounts Concurrently Waiting.
ANALPATH 12.239 Revised analysis of TYPE73, TYPE74, TYPE78CF data.
ANALPGNS 12.293 CPU Utilization by Performance Group analysis.
ANALRMFR 12.047 RMF CPU Activity Report CPU time can be zero.
ANALRMFR 12.276 Report selection by storage class, device, LCU.
ANALSMF 12.012 SMF Simulator 3380 tracks count wrong if CISIZE=26624
ASMIMSLG 12.129 ABEND 002 on IMSMPRS with FASTPATH records corrected.
ASMTAPES 12.024 MXG Tape Allocation and Mount Monitor almost healed.
ASMTAPES 12.058 New Tape Allocation and Mount Monitor now works!
ASMTAPES 12.105 MXG Tape Mount and Tape Allocation Monitor Now Works!
ASMTAPES 12.234 MXG Tape Mount and Tape Allocation Monitor fixes.
ANALINIT 12.274 Analysis of initiator concurrent usage.
ASUMPRTR 12.040 KEEPIN=STDUPLEX TMBUPLEX needed to be added
ASUMTALO 12.273 Revised summarization using %ANALCNCR (incompat).
ASUM70PR 12.048 INVALID NUMERIC DATA 'SAT' with modified IMACRMFI.
BUILDPDB 12.013 TYPE77 addition to BUILDPDB/BUILDPD3 causes errors.
BUILDPDB 12.026 Jobs with ABEND='JCL' are not in PDB.JOBS.
BUILDPDB 12.200 New dataset PDB.TYPE72SC for Goal Mode Server data.
BUILDPDB 12.204 TYPETASK added for jobs with only type 6 record.
DAILYDSN 12.004 Variable UMLEVEL must be added to KEEPIN= list.
DB2ACCT 12.033 DB2 3.1 Buffer Statistics are wrong.
DB2STATS 12.033 DB2 3.1 Buffer Statistics are wrong.
DIFFDB2 12.133 DDF variables QLSTxxxx incorrectly deaccumulated.
FMXGSID 12.015 Function ABENDs 0C4 with SAS 6.08 at TS407.
FMXGUCBL 12.015 Function ABENDs 0C4 with SAS 6.08 at TS407.
INSTALL 12.101 Documentation of common MXG installation errors.
REXXDB2 12.306 REXX program to convert DB2 GTF to SMF format.
TESTOTHR 12.153 ABEND 213-04 if VIO used for temporary allocation.
TRNDRMFI 12.046 Variables TSOnSWAP and TSOnTRAN were not normalized.
TYPEACC 12.277 Support for ACC/SRS from Mitchem Technologies.
TYPEACF2 12.063 INVALID data for LIDCDATE/LIDDXPDT/LIDIPDAT/LIDADATE.
TYPEACF2 12.072 INPUT STATEMENT EXCEEDED for subtype 'V' record.
TYPEACF2 12.253 ACF2 INPUT STATEMENT EXCEEDED, DO value wrong
TYPEACHE 12.262 CACHE90 zero observations with RAMAC devices.
TYPEAPAF 12.138 Support for APAF 2.0 (incompatible).
TYPEAPAF 12.197 INPUT STATEMENT EXCEEDED ... with backlevel APAF.
TYPEBETA 12.132 Support for BETA93 1.6.0 user SMF record.
TYPEBGSI 12.268 Support for BGS's BEST/1 I/O Monitor SMF record.
TYPECACH 12.194 3990-6 storage variables units were changed by IBM.
TYPECIAO 12.299 Support for CICSAO user SMF for CICS availability.
TYPECIMS 12.265 IMF variables ABENDSYS/ABENDUSR in CIMSPROG wrong.
TYPECIMS 12.284 Support for IMF 3.1 (for IMS 5.1) - record unchanged.
TYPECMFV 12.269 Support for Boole & Babbage CMF VSAM MRR records.
TYPECTLD 12.011 INPUT STATEMENT EXCEEDED for CONTROL-D SMF record.
TYPEDB2 12.157 Dataset PDB.DB2ACCTB should have zero observations.
TYPEDB2 12.159 DB2STATS variables QB3Taaaa/QB4Taaaa corrected.
TYPEDB2 12.220 Invalid DB2 type 101 workaround (fix is APAR PN63234)
TYPEDCOL 12.051 Variable DCNDMBLK needs to be multiplied by 1024.
TYPEDCOL 12.057 Support for DFSMS 1.2 added several variables.
TYPEDMON 12.120 Support for ASTEX 2.0 added several variables.
TYPEEDGB 12.242 Support for DFSMSrmm Control Backup file
TYPEEDGR 12.242 INPUT STATEMENT EXCEEDED corrected.
TYPEHIPR 12.104 Support for EMPACT's HIPER-CACHE Version 1.1.1.
TYPEHSM 12.206 Support for HSM APAR OW05988, adds CPU time to FSR!
TYPEIAM 12.226 Support for Innovation Processing's IAM SMF record.
TYPEICE 12.031 ICEBERG dataset ICEBRGCH is trashed, misalignment.
TYPEICE 12.160 Support for STK ICEBERG SMF record subtype 5.
TYPEICE 12.228 ICEBERG variables CAENBCUR,DFWENCUR incorrect.
TYPEICE 12.243 Support for ICEBERG's PUT9404 (compatible).
TYPEIDMS 12.212 Support for CA/SQL user SMF record (same as IDMS/R).
TYPEIMSA 12.009 IMS Log processing incorrect, misspelled NMSGPROC.
TYPEIMSA 12.179 SAP Accounting under IMS times wrong.
TYPEITRF 12.287 Candle's ITRF product errors corrected by Candle.
TYPELMS 12.007 WARNING LMS SMF RECORD TYPE created in error.
TYPEMEMO 12.056 Support for MEMO subtype 6 SMF record.
TYPEMON8 12.291 INVALID OFFSETS IN USER SEGMENTS Landmark CICS.
TYPENDM 12.014 INPUT STATEMENT EXCEEDED for NDM type FP record.
TYPENDML 12.146 Reading NDM VSAM log produced zero observations.
TYPENSPY 12.010 LANSPY dataset NSPYLANS has no/too few observations.
TYPENSPY 12.184 NETSPY Token-Ring TIC_UTIL in NSPYTR 10 times larger.
TYPENSPY 12.196 Variables AOUTSZT and ARSPNET now match reports.
TYPENSPY 12.225 Support for NETSPY 4.5 (partially incompatible).
TYPEODS 12.198 Support for InfoAccess Release 5.1 user SMF record.
TYPEOMCI 12.027 OMEGAMON for CICS dataset OMCISYST wrong.
TYPEOMCI 12.164 Zero observations in OMCIVSAM dataset.
TYPEOMCI 12.167 INVALID DATA FOR EXMXT1 - EXMXT10 when hex zeroes.
TYPEOMCI 12.203 Support for Omegamon for CICS V100 and V300 SMF.
TYPEOMSM 12.123 Support for Omegamon II for SMS V100/V110.
TYPEOMVT 12.186 Support for Omegamon for VTAM V160 (Incompatible).
TYPEOPC 12.002 INVALID MT0TYPE, OPC29 too few obs, split support.
TYPEQAPM 12.292 Support for OS/400 AS/400 Version 3.1.0 INCOMPATIBLE.
TYPEQTRT 12.037 Support for AS/400 Trace File (QTRTSUM).
TYPERDS 12.295 Support for Network Systems DXE Channels RDS SMF.
TYPERMDS 12.264 Support for RMDS Version 2.1 (incompatible)
TYPERMFV 12.259 RMF Monitor III ("ZRB") support for MVS/ESA 4.3.
TYPESARS 12.299 Support for LEGENT's SAR Cross Memory Logoff SMF.
TYPETCP 12.041 Ambiguity between TELNET and FTP resolved.
TYPETCP 12.049 TCP/IP APAR PN34837 added 8 bytes to TELNET SERVER.
TYPETCP 12.257 Support for TCP/IP Version 3.1 (incompatible)
TYPETELE 12.229 Support for CA's TELEVIEW user SMF record.
TYPETLMS 12.136 Support for TLMS Release 5.4.
TYPETMDB 12.162 Support for Landmark's The Monitor for DB2.
TYPETMON 12.151 Support for TMON/CICS Version 1.3 (incompatible).
TYPETMVS 12.191 Support for TMON/MVS Release 1.3 (incompatible).
TYPETPX 12.008 UNRECOGNIZED TPX VERSION message.
TYPETPX 12.263 Support for TPX 4.0 (compatible, new datasets)
TYPETSOM 12.165 Support for LEGENT's TSO/MON 6.1 added (compatibly).
TYPEUNIK 12.112 Support for UniKix Release 4.1.
TYPEVMXA 12.069 UNEXPECTED/INVALID CONTROL RECORD/PROBABLE DATA LOSS.
TYPEVMXA 12.224 VM/ESA 2.2 Scheduler records cause PROBABLE LOSS.
TYPEWSF 12.096 Support for RSD's WSF Release 3.5.1.
TYPEXAM 12.282 Support for Velocity Software XAMAP Version 2.2.
TYPEXPSM 12.267 Support for Xerox Print Service Manager XPSM SMF.
TYPE102 12.032 IFCID=196 (Lock Timeout Details) now populated.
TYPE102 12.088 Additional DB2 Trace IFCIDS new in 3.1 now supported.
TYPE102 12.103 DB2 Trace IFCID=141 corrected.
TYPE102 12.135 IFCID 125 created extraneous observations.
TYPE110 12.023 CICS Statistics in CICLSRR wrong.
TYPE110 12.068 Boole & Babbage subtype 'BB02'x changed to '0B02'x.
TYPE110 12.166 Support for CICS/ESA 4.1.0 is added (compatibly).
TYPE110 12.189 CICS 3.2.1 only. CICDS variables wrong.
TYPE110 12.278 ERROR.TYPE110.SUBTYPE 2, STID=57, CICS 3.3.0.
TYPE115 12.208 Support for MQM 1.1.2 Performance Statistics SMF.
TYPE116 12.209 Support for MQM 1.1.2 Accounting SMF record.
TYPE123 12.215 Support for S/390 Parallel Query Server SPQS SMF 123.
TYPE1415 12.036 APAR OW00484 adds open date to type 14,15 SMF record.
TYPE1415 12.158 APARs OW00484/UW06888/OW08246 corrupt TYPE1415 data.
TYPE1415 12.245 INVALID DATA FOR OPENDTE corrected.
TYPE26J2 12.015 IBM truncates type 26 record, caused STOPOVER.
TYPE28 12.097 NPM Release 2.0 subtypes 214 thru 219 corrected.
TYPE28 12.145 Support for NPM Release 2.2 added NetWare measures.
TYPE28 12.188 MXG 12.04 only. Type 28 INPUT STATEMENT EXCEEDED.
TYPE28 12.201 Support for NPM 2.2 NPMVSaaa datasets corrected.
TYPE30 12.018 TYPE30_V INTBTIME/INTETIME are GMT in MULTIDD='Y'.
TYPE37 12.154 Short LAND segment caused INPUT STATEMENT EXCEEDED.
TYPE39 12.210 Support for Sterling Software's ASM V3.0.0 type 39.
TYPE42 12.019 INVALID ADSM SECTION TRIPLET and/or bad data values.
TYPE42 12.045 DFSMS GG66-3252 pub are now variables in TYPE42DS/SR
TYPE42 12.180 TYPE42 STARTIME/ENDTIME may be on GMT clock.
TYPE50 12.102 Support for VTAM Tuning APAR OW04453 type 50 SMF.
TYPE6 12.016 CA-DISPATCH 5.1 PTF T97E056 corrects bad READTIME.
TYPE6 12.059 Type 6 records from VPS now have SUBSYS='VPS '.
TYPE6 12.199 INVALID ARGUMENT TO FUNCTION INPUT with CA-DISPATCH.
TYPE62 12.122 Support for APAR OW00157 adds SMS classes to TYPE62.
TYPE70 12.288 Support for PR/SM APAR OW078986 adds "MVS Wait".
TYPE70 12.289 MDF now populates TYPE70PR/ASUM70PR w/valid CPU time
TYPE70 12.290 Same LPAR number for two LPARs trashes CPU busy.
TYPE70s 12.006 SYNCTIME wrong in RMF 71,73,74,75,77,78 and 79.
TYPE72DL 12.252 New TYPE72DL dataset for MVS/ESA 5.1 Goal Mode.
TYPE80A 12.280 RACF Command events decoded in TYPE80A for RACFRW.
TYPE89 12.028 Support for Measured Usage License Charges type 89.
TYPE91 12.038 BatchPipes/MVS APAR PN45846 adds new fields.
TYPE91 12.254 BatchPipes/MVS INTBTIME/INTETIME values incorrect.
TYPE99 12.117 Support for ESA 5.1 Workload Manager Trace SMF 99.
TYPE99 12.285 Support for Type 99 Subtype 1 added.
UCICSCNT 12.021 Utility report output counts were unclear.
UTILCICS 12.182 UTILCICS fails with syntax error, mislocated comment.
UTILCICS 12.202 CICS Utility identifies if type 110s are Omegamon's.
UTILCVRT 12.022 Non-existent conversion utility now exists.
VAXPDS 12.301 Support for VAX Accounting and Performance Data.
VMXGSUM 12.084 New features added transparently to VMXGSUM.
VMXGSUM 12.233 New VMXGSUM enhancements in XMXGSUM.
VMXGSUM 12.271 More VMXGSUM enhancements in XMXGSUM.
VMXGVTOF 12.249 DEVCYL value different for RAMAC than native devices.
WEEKBLDT 12.195 DATASET TAPEMNTS NOT SORTED.
XMXGSUM 12.304 XMXGSUM replacement for VMXGSUM ready for use.
Inverse chronological list of all Changes:
NEXTCHANGE: Version 12
Change 12.328 Syntax errors may occur with ANALDB2R (depending on which
ANALDB2R reports are requested).
Mar 19, 1995 -Insert "INCODE=" between lines 045520 and 045530:
045520 QWHSIID QWHCATYP QWHSSTCK,
045525 INCODE=
045530 %DB2RSELA;
This error caused PMACC01 report to fail
-There are two occurrences of this pair of lines:
+1 "&SORT3 - " &SORT3 $CHAR12.;
%END;
%END;
In both pairs of lines, remove the semicolon after the
$CHAR12, and insert a new line with just a semicolon
between the two %END statements, so they now read:
+1 "&SORT3 - " &SORT3 $CHAR12.
%END;
;
%END;
This error occurred with PMACC02 if less that three
SUMBY= variables were specified.
Change 12.327 -ANALTALO failed with VARIABLE NOT FOUND because it had
ANALTALO not been updated for the changes in ASUMTALO variables.
TRNDTALO Now, ANALTALO works with ASUMTALO/TRNDTALO datasets.
Mar 19, 1995 -TRNDTALO failed because a comma was missing after the
calculation of DURATM.
Thanks to Glenn Harper, Memorial Hospital Systems, USA.
Change 12.327 ANALCNCR failed when invoked by ANALTAPE or ANALMTP, but
ANALCNCR the logic error was only in ANALCNCR. Many lines were
Mar 19, 1995 changed, but the ANALMTP error can be eliminated by just
adding OUTSUMRY=SUMMARY, to the %ANALCNCR invocation in
ANALMTP.
Thanks to Tom Elbert, John Alden Life Insurance, USA.
Thanks to Steve Harris, Tennessee Valley Authority, USA.
Change 12.326 Support for Memorex/Telex LMS Version 3.1 (INCOMPATIBLE,
FORMATS because a two-byte field was expanded in place to four
VMACLMS bytes in many records). Two new variables are added to
Mar 19, 1995 LMSAINT dataset, and twenty-four new variables are added
to the LMSINIT dataset.
New values for existing MGLMSxx formats were added, but
there were no new formats created.
Thanks to Dan Kaberon, Hewitt Associates, USA.
Change 12.325 Cross-System DASD Analysis Report columns ran together
ANALPATH when I changed LCU from $HEX2 to $HEX4 in MXG 12.12, so
Mar 19, 1995 Dan spread the columns in this report revision.
Thanks to Dan Kaberon, Hewitt Associates, USA.
Revised: See Change 13.077.
Change 12.324 In IMACICSA, variables STCTIME/STCTIMTR are now formatted
IMACICSA TIME12.2 instead of DATETIME21.2, STCTIMTR is now INPUT
VMAC110 as PIB4.3 instead of PDTIME4., a "LENGTH STCTASK $2;" was
Mar 17, 1995 added, and after the INPUT of STCDB5S &PIB.4., insert
"@; INPUT" (so that either the CPIC statistics or the
Appendage stats are read first, but then STCRUT and other
fields are read for either CPIC or Appendage records).
-In VMAC110, JCSPTIME's PDTIME4. input was changed to
HH &PK.1. MM &PK.1. SS ?? &PD2.1 and then
IF SS GT 0 THEN JCSPTIME=HMS(HH,MM,SS);
Thanks to Jens Schlatter, EDP Consulting Schlatter, GERMANY.
Change 12.323 -The argument 2*_I_ in the SUBSTR function was invalid
VMAC80A when _I_=16; the argument should be 2*_I_-1.
Mar 17, 1995 -STOPOVER occurs if RACFDLN is GT 27 in WHEN (12) logic.
Inside the WHEN (12) logic, inside IF RACFDLN GE 27 ...
insert SKIP=RACFDLN-27;IF SKIP GT 0 THEN INPUT +SKIP @;
to prevent STOPOVER abend when there are more than three
IGNORED IDnames. MXG now keeps first six names.
-Segments with RACFTYPE=32,42, or 44 are now protected so
you won't get "SKIPPED SEGMENT" messages for those data
segments.
Thanks to Tom Parker, Hogan Systems, USA.
Change 12.322 INPUT with QWSBNM after IF NRQWSB GT 9 was replaced with
VMACDB2 INPUT +SKIP @; because if there were ten destinations,
Mar 17, 1995 the tenth destination name replaced the first dest name.
This was not likely to have been noticed, but is fixed.
Also, the reference to Change 12.179 inside VMACDB2
should have referenced Change 12.279.
Thanks to Tom Parker, Hogan Systems, USA.
Change 12.321 CICS/ESA Statistics Dataset CICDS from CICS/ESA 3.3.0 or
VMAC110 4.1.0 can have values in DS3TWT,DS3TDT,DS3TCT,DS3ACT,
Mar 17, 1995 DS3SWT,DS3SCT that are 4096 times too large. Ten lines
that should have been added by Change 12.030 were lost.
This error was overlooked because the Concurrent TCB time
in my test statistics records was essentially zero. A
separate coding error also caused DSGTDT to be wrong; the
statement DSGTDT=DSGTWT/4096 obviously should have had
DSGTDT on the right! Since CICDS is used to create the 6
PDB.CICxxxRV datasets, those datasets will also be wrong
if the DS3 variables are non-zero. Note that only the
CICS Statistics data was affected - the transaction times
in CICSTRAN were not affected by this error.
Thanks to Waldemar Schneider, SAS Europe, GERMANY.
Thanks to Tom Parker, Hogan Systems, Inc., USA.
Change 12.320 Many Landmark CICS Version 1.3 variables were not INPUT
TYPETMON because I used an early DSECT that showed many of these
Mar 17, 1995 fields as reserved. When Svend raised the question, I
found I had a more recent DSECT, and now there are 15 new
variables in dataset MONITASK, and 79 new variables in
dataset MONISYST. This revision has been validated with
sample data for reasonableness, but please validate with
reasonableness checks of your own data records!
Thanks to Svend Henningsen, SMT Data A/S, DENMARK.
Change 12.319 Variables F20LHST F20RHST FTPCRHST FTPCLHST were added to
VMACILKA the LENGTH DEFAULT=4 statement with length 5, because
Mar 17, 1995 4-byte numeric addresses are truncated when they are
stored in only 4 bytes.
Thanks to ???, Nordbanken, USA.
Change 12.318 ANALDB2C error: NO MATCHING IF THEN ELSE CLAUSE because
ANALDB2C the statement END: should have been END; (i.e., change
Mar 17, 1995 the colon to a semi-colon.
Thanks to David Callahan, Caterpiller, USA
Change 12.317 A local external writer type 6 with invalid SMF6LN1 value
VMAC6 caused INPUT STATEMENT EXCEEDED RECORD LENGTH error. The
Mar 17, 1995 line IF SUBSYS='JES2' AND SMF6LN1 GT 30 THEN DO; is now
.... SMF6LN1 GT 30 AND SECTIND='1.......'B THEN DO;
Thanks to Joe Schwartz, CIGNA, USA.
Change 12.316 The DCOLLECT output file LRECL has been increased to 644
JCLDAYDS but this JCL example contained LRECL=264, which caused an
Mar 17, 1995 ABEND. Remove the DCB attributes from the JCL, so the
DCB attributes will be picked up from the data.
Thanks to Glenn Harper, Memorial HealthCare System, USA.
Change 12.315 Landmark CICS records in version 8 format (TYPEMON8)
IMACMONI has these errors:
TESTOTHR -Syntax error (in MXG 12.12 only) - NO MATCHING DO/SELECT.
TYPEMON8 Change the line in member TYPEMON8
Mar 17, 1995 that now reads: ... AND MRONUM GT THEN DO;
to read: ... AND MRONUM GT 0 THEN DO;
This got past my Q/A test because member TYPEMON8
was not tested; when I meant to add member TYPETMON
(support for version 1.3) to my test member
TESTOTHR, I accidentally replaced TYPEMON8. Now,
both TYPEMON8 and TYPETMON are tested!
-Using TYPEMON8 to read TMON 1.3 records converted to 8.1
format caused USER ABEND 1099, and "IT APPEARS YOU ARE
TRYING" message, due to the new TMMDREC='TD' DSA Interval
record, which did not exist in version 8.1!
Change the line in member TYPEMON8 that now reads:
IF TMMDREC='DD' OR TMMDREC='HH' THEN DELETE;
to read:
IF TMMDREC='DD' OR TMMDREC='HH' OR TMMDREC='TD'
THEN DELETE;
-Now that I know that the TD record exists in converted
version 8 records created from TMON 1.3 records, I copied
creation of dataset MONIDSA from TYPETMON into TYPEMON8,
so that you will get the new DSA data from the converted
records, but it would be much wiser if you had used the
TYPETMON support to read the native TMON 1.3 records and
thus avoid the unnecessary conversion step. Note that
member IMACMONI was also changed (the _LMONDSA/_KMONDSA
macro definitions were added), so if you have a tailored
member IMACMONI in your USERID.SOURCLIB, you will need to
retrofit your tailoring with the new IMACMONI member.
-Also, the DO group beginning with
IF LENMONI='1... ..'B THEN DO;
was relocated to follow
IF TMMDREC='DD' ... 'HH' ... 'TD' THEN DELETE;
because one XA site found the LENMONI bit on in an 'HH'
record (causing USER ABEND 1099), even though the site
had the EXITMON6 decompression exit installed. I'm still
investigating, but relocating the DELETE to be prior to
the LENMONI test eliminated the ABEND.
Thanks to Carl Sommer, SAS Institute Cary, USA.
Thanks to Jim Swartz, Dale Electronics, USA.
Thanks to Svend Henningsen, SMT Data A/S, USA.
===Changes thru 12.314 were included in MXG 12.12 dated Mar 1, 1995===
(but were were not printed in MXG Newsletter TWENTY-SEVEN)
Change 12.314 IMACEXCL (for CICS Exclude/Include logic) is updated with
IMACEXCL new _CICXCU4 for CICS/ESA 4.1.0 records; the old _CICXCUS
Feb 24, 1995 macro for Version 3 won't work with the restructured data
records in Version 4 - you get no error, but bad values,
most notably for TASCPUTM.
Thanks to Simon Wu, Southern California Edison, USA.
Change 12.313 TCP/IP error INVALID DATA FOR TELLOGFT encountered at one
VMACTCP site; the 8-byte field added by APAR PN34837 did not have
Feb 23, 1995 a valid date-time-stamp. To eliminate the message, I put
double questionmarks between TELLOGFT and SMFSTAMP8.
Thanks to Barbara Rask, University of North Dakota, USA.
Change 12.312 INPUT STATEMENT EXCEEDED for LANSPY type D record because
VMACNSPY the path segments were not correctly skipped. Inside the
Feb 23, 1995 IF LDLANMAX GT 0 THEN DO; group, after the @;, insert
OFFNSPY=OFFNSPY+LDLANMAX*28;
to move the pointer over the path segments.
Thanks to Mr. Dechamps, R&V Versicherung, GERMANY.
Change 12.311 Early MXG 12.12 only (dated 20Feb95). IEBUPDTE step had
VAXPDS return code of 4, because the "./" in VAXPDS should have
Feb 23, 1995 been changed to "xy".
Thanks to Glenn Harper, Memorial Hospital, USA.
Change 12.310 RMF CPU reporting is now consistent with new APAR OW07986
ANALRMFR (MVS/ESA 5.1) or OW05435 (MVS/ESA 4.3). "CPU ACTIVITY"
Feb 22, 1995 REPORT column showing the CPU busy time percentage (
column header "BUSY TIME PERCENTAGE") has been replaced
by a column showing now the LPAR CPU utilization (new
column header "LPAR BUSY TIME PERC"). In case of an LPAR
system this column contains the same values as in
previous versions. In case of a basic mode system, dashes
are shown here. The previous column showing the wait time
( column header "WAIT TIME PERCENTAGE") has been replaced
by a column showing the MVS view of the CPU utilization (
column header "MVS BUSY TIME PERC"). The wait time is no
longer shown on this report.
Thanks to Bruce Widlund, Merrill Consultants, USA.
Change 12.309 Xerox Print Services Manager SMF record has been further
FORMATS enhanced and validated. The first 3 downtime segments
VMACXPSM are kept (if you find you need more, let me know), and
Feb 22, 1995 the font list and forms list are now decoded.
Change 12.308 Support for RMDS 2.1 has now been validated with read SMF
VMACRMDS data; some datetimes were missing because all of the YYYY
Feb 22, 1995 inputs should have been &PIB.4. instead of &PIB.2.; the
input of RMDSALC and RMDSPAGE for RMDSORG='1' should have
been &PIB.4. instead of &PD.4. (I guessed wrong!); and
some datetime calculations in the old 1.3,1.4 code were
moved to eliminate missing value messages on the log.
Thanks to Wolfgang Vierling, Vereinte Versicherungen, GERMANY.
Change 12.307 Some dates/times were wrong because Change 10.176 was
VMACFTP only partially implemented; PIB4. should have been PIB4.2
Feb 20, 1995 and the DATEJUL() was missing in DHMS functions.
Thanks to Waldemar Schneider, SAS Europe, GERMANY.
===Changes thru 12.306 were printed in MXG Newsletter TWENTY-SEVEN=====
Change 12.306 Support for DB2 Trace Records sent to GTF is provided by
REXXDB2 this user contribution, in REXX, which will read the GTF
VMACSMF records (which are uniquely segmented) and reconstruct a
Feb 18, 1995 valid, un-segmented SMF format type 102 record that can
be processed by conventional MXG code. (DB2 type 102
records that happen to fit in one 255-byte segment can
already be processed, but most of the interesting data is
in longer records, and I had contracted with a slick ASM
programmer to write me an Assembly routine to do exactly
what this slick REXX program does!) I have modified the
GTF macro in VMACSMF to at least now tell you that a
spanned record was deleted - Clyde was justifiably
frustrated when he first tried to use vanilla MXG code
against GTF data, and MXG did not tell him that those
spanned records could not be handled and were deleted!
Thanks to Clyde Thompson, Australian Taxation Office, AUSTRALIA
Change 12.305 -ANALDB2R provides DB2 Version 3.1 reports for PMACC02
ANALDB2R (Accounting Detail Report), PMSTA02 (Statistics Summary
ASUMDB2A Report), and PMSTA01 (Statistic Detail Report), the last
TRNDDB2A now uses the DB2STATS. PMACC02 does not yet include
TRNDDB2B detail stats on each of the new buffer pools; that will
TRNDDB2S be available in the next MXG release, as will package
TRNDDB2X report support. These new DB2 reports take many more
VMACDB2 pages per group, so be cautious and select carefully!
Feb 20, 1995 -ASUMDB2A, TRNDDB2A, and TRNDDB2B were changed to now keep
Oct 19, 1995 new DB2 3.1 variables needed for ANALDB2R reports.
-TRNDDB2S now uses PDB.DB2STATS instead of the (archaic
DB2STAT0, DB2STAT1, and DB2STAT2 datasets, (ANALDB2R also
now uses PDB.DB2STATS for statistics reports). Instead
of creating the old TRNDDB20/TRNDDB21 datasets, TRNDDB2S
now summarizes into TREND.TRNDDB2S. You can convert your
old TRNDDB20/TRNDDB21 datasets into the TRNDDB2S with a
one-time execution of the UCVRTDB2 program.
-New member TRNDDB2X trends the eXtra statistics for each
buffer pool from PDB.DB2STATB data. Revised 10/19/1995.
-VMACDB2 was changed to add variables to DB2ACCTB that are
needed by ANALDB2R (and should have been kept already!).
-The DB2STAT0, DB2STAT1, DB2STAT2, TRNDDB20, and TRNDDB21
datasets should be replaced in your reporting with either
PDB.DB2STATS or TREND.TRDNDB2S, as only these latter two
datasets will continue to be enhanced. Fortunately, the
statistics datasets are physically small, so keeping the
redundant data in your PDB is better than removing it now
(and possibly causing an avoidable ABEND)!
Thanks to Chuck Hopf, Merrill Consultants, USA.
Change 12.304 XMXGSUM, a much faster and leaner replacement for VMXGSUM
XMXGSUM has all errors fixed (the last fix UPCASED all variables)
Feb 18, 1995 and has been heavily tested. However, because VMXGSUM is
so pervasive in MXG ASUM/TRND/ANAL members, I decided to
leave VMXGSUM intact and deliver XMXGSUM as a separate
member so you would not be accidentally burned. If you
have lots of CICS/DB2 data being summarized by MXG, I
strongly urge you to test XMXGSUM in place of VMXGSUM,
because it runs much faster and uses much less CPU and
DASD when there are lots of data and variables read and
only a few kept. (You can test simply by copying XMXGSUM
into your USERID.SOURCLIB, renaming it therein to VMXGSUM
and running your test programs, because internally it is
VMXGSUM!). However, do not use OPTIONS OBS=nnn with the
new XMXGSUM without reading this detail techie note:
XMXGSUM figures out what variables are really needed
and what variables exist to create a KEEP= list. We
use a PROC CONTENTS of all of the datasets in the
INDATA= parameter to create the list of unique
variable names. If OPTIONS OBS=nnn is in effect, and
if nnn is less than the total number of variables,
unpredictable failures will occur (or no failure with
incorrect values!). created. To prevent these
problems, never set the OBS= to be less than the sum
of the number of variables in the combined INDATA=
datasets or (a better choice) set OBS back to MAX
after selecting the data you want to summarize. A
dataset with 0 obs and a non-existent dataset look the
same (because there is no SAS facility to determine if
a dataset exists). If the dataset does not exist,
then PROC MEANS abends because its expected variables
are not found. Now, an observation is forced so the
number of variables can be used to tell if you made an
mistake (i.e., you referenced a non-existent dataset
for input) or if there just happened to be no
observations (when we go ahead and create the expected
zero-obs output dataset).
Thanks to Chuck Hopf, Merrill Consultants, USA.
Thanks to Diane Eppestine, Southwestern Bell, USA.
Change 12.303 Analysis of tape mounts pending using the MXG Tape Mount
ANALMTP monitor TYPETMNT data and the new %ANALCNCR concurrency
Feb 18, 1995 analysis tool gives you average and maximum number of
tape mounts outstanding across the day, with built-in
graphs! A fine example of the power of %ANANCNCR!
Thanks to Chuck Hopf, Merrill Consultants, USA.
Change 12.302 ANALCNCR enhanced to permit multiple MAX= variables and
ANALCNCR multiple COUNT= variables. If no MAX= is used and there
Feb 18, 1995 are COUNT= variables, then the MAX variables will be
MAX1-MAXn where n is the number of COUNT= variables used.
MAX= is positional, and the variables listed will be the
MAX of the same positioned variable in the COUNT= list.
If you don't use MAX= and ask for a summary, then the
MAXCNCR variable will contain the MAX value for the
things you are counting.
Change 12.301 Support for VAX Accounting Data and even some Performance
VAXPDS reports are provided in this user contribution from the
Feb 18, 1995 Australian creators of "The Bill". Member VAXPDS is
really a 12-member PDS in IEBUPDTE format (the first few
lines give you the JCL example to create MXG.VAX.SOURCLIB
PDS from member VAXPDS. I have not tested this code, but
it is self explanatory (read comments in each member to
understand what it does) and has been used by several VAX
sites in Australia, so I anticipate no surprises!
Thanks to Brian Jennings, Pacific Management Systems, AUSTRALIA.
Change 12.300 SYNCSORT has permitted up to 32 SORTWORK DDs, but MXG did
VMACSYNC not decode statistics for 13th-32nd. I have added code
Feb 17, 1995 to INPUT the 13th-32nd sets of variables, but I did not
add the new variables to the KEEP= list in VMACSYNC, as
I really don't think anyone uses that many DDs! If you
really need the extra variables, they can be added using
the _KTYSYNC macro in IMACSYNC (see Change 10.175 for the
general instructions for using _K macros to add/drop
variables to MXG datasets). This was only an MXG change;
while there is a new release 3.6 of SYNCSORT, it made no
changes to their SMF record.
Change 12.299 Support for CICSAO user SMF record written by CICSAD,
EXTYCIAO added by APAR PN06426, provides CICS availability info,
FORMATS in new dataset TYPECIAO, reporting for each CICS region
IMACCIAO under CICSAO control when CICSAO started or shutdown a
TYPECIAO particular region, and when that CICS actually completed
VMACCIAO that function. If the region halts (becomes unusable) or
Feb 15, 1995 is unhalted, that event too is recorded.
Change 12.298 The JCL example for the MXGTMNT PROC did not contain an
ASMTAPES //SNAPOUT DD SYSOUT=C
Feb 15, 1995 causing the monitor to fail at startup. Now it does.
Thanks to Shaheen Pervaiz, Acxiom, USA.
Change 12.297 SAS errors "OBJECT FILE OUT OF SPACE" is an indication
CONFIG that you do not have enough virtual storage, either the
CONFIG07 MEMSIZE in your CONFIG member is too small or the REGION
CONFIG08 parameter on your JOB card is too small. MXG 12.12 does
Feb 15, 1995 require slightly more virtual storage (because of the
additional datasets/variables for MVS/ESA 5.1), and if
you were just below the limit prior to MXG 12.12, you may
fail just due to MXG 12.12. I have raised the default in
CONFIG to 48M to hopefully minimize this occurrence.
Thanks to Shaheen Pervaiz, Acxiom, USA.
Change 12.296 DEBUG messages were printed on the SAS log for some MIM
VMACMIM records; the PUT statement writing these messages should
Feb 15, 1995 have been deleted.
Thanks to Shaheen Pervaiz, Acxiom, USA.
Change 12.295 Support for RDS, Remote Device Support, for Network
EXTYRDS1 Systems Corp. DXE Channel Extenders user SMF record
EXTYRDS2 creates seven datasets:
EXTYRDS3 TYPERDS1 - Device Class Descriptions
EXTYRDS4 TYPERDS2 - Path Descriptions
EXTYRDS5 TYPERDS3 - Device Throughput
EXTYRDS6 TYPERDS4 - Network Throughput
EXTYRDS7 TYPERDS5 - RDEVADPT Errors
IMACRDS TYPERDS6 - HOSTADPT Errors
TYPERDS TYPERDS7 - LINK Network Errors
VMACRDS Activity counts, bytes transferred, and other statistics
Feb 15, 1995 as well as errors are provided in these datasets.
Thanks to Christopher B. Calvin, Ahold Information Services, USA
Thanks to Benny Maynard, Ahold Information Services, USA
Change 12.294 Support for SAR Cross Memory/VTAM Region Session Logoff
EXTYSARS user SMF record contains statistics on storage used above
IMACSARS and below, CPU time, Getmains, etc., in new dataset
TYPESARS SARSESSN. Note that this is a separate SMF record that
VMACSARS can be created by SAR; the other record created by the
Feb 14, 1995 SARSRQU3 exit is supported by member TYPESAR et al.
Thanks to Miguel Trujillo, Salomon, Inc., USA
Thanks to Dov Brosh, Salomon, Inc., USA.
Change 12.293 CPU Utilization for each Performance Group is provided in
ANALPGNS this new, simple analysis algorithm which merges RMFINTRV
Feb 12, 1995 with TYPE72. Two measures of PerfGrp utilization are:
PGPCTCAP = Percentage of Capacity used by PERFGRP.
PGPCTUSE = Percentage of Active Time used by PERFGRP.
The denominator for Percent of Capacity is Duration times
Number of CPUs Online, while the denominator for Percent
of Active Time is the Capacity Duration times PCTCPUBY.
Which number you use depends on whether you want to know
how much of the installed capacity was used by a PERFGRP,
or how much of what was used by everyone was used by a
PERFGRP, so both numbers are provided. This sample will
likely be expanded into a full-blown %ANALPGNS member
with bells and whistles and summarization, but the basic
algorithm is provided in these initial 48 lines.
I have described how to do this scores of times; with
hindsight, this member should have existed years ago!
Thanks to Virginia Tsai, SAS Institute, TAIWAN.
Change 12.292 Support for OS/400 Version 3.1.0 AS/400 Performance Data
EXQAPIO1 records: completely INCOMPATIBLE!! Instead of appending
EXQAPIO2 new fields at the end of the existing records, new fields
EXQAPIO3 were inserted in almost every record, and some record's
EXQAPIO4 fields were reordered even when no new fields were added!
IMACQAPM Previously, MXG logic used LENGTH to identify the OS400
TYPEQAPM Version and hence data format, but QAPMDISK record was
VMACQAPM reordered with no change in LENGTH, so MXG now uses the
Feb 12, 1995 variable ASLEVEL (input from QAPMCONF and retained, which
is why _TQAPCON must always be executed first) to detect
data format.
While almost every other record was also changed, that
change was to insert two 2-byte packed decimal fields for
Bus Number and Bus Address. But those IOPB/IOPA variables
were already created in MXG from the existing 1-byte "IP
Address" (bits 0-2 = IOPB, bits 3-7 = IOPA, easily INPUT
with SAS's BITS informat)! Apparently, it was so hard
for other OS/400 programmers to decode these simple bit
values (dare I say "objects"?), that IBM Rochester had to
convert the bits to numbers and create two new fields for
them (which, of course, were then inserted, instead of
being appended to the end for compatibility)!.
And IBM's pub SC41-3306-00, pp A-14 to A-30, for the
QAPMSYS record, has completely wrong "Buffer Position"
values starting with location 507 of this 3090-byte
record - that was real fun to sort out!
All this from winners of the Malcolm Baldridge award!
In spite of the OS/400 developers inability to provide
compatible records across version changes, there is a
wealth of new data added to the QAPMSYS and QAPMJOBS
datasets, and the new QAPMIOPD record creates four new
datasets from SNADS:
QAPMIOP1 - File Server I/O Processor Pipe Task
QAPMIOP2 - OS/2
QAPMIOP3 - HPFS386
QAPMIOP4 - Lan Server
IBM now says QAPMIOP1 is Internal Use Only, and its
counters were incorrectly documented, and that even
if they were, you can't do anything about them, and
its description will be removed. However, since my
code was already done before I knew that fact, I
decided to leave the code in place with this caveat!
MXG Install note: YOU MUST ADD //QAPMIOPD DD DUMMY to
your existing QAPM job's JCL when you install MXG 12.12,
or that existing job will fail with a JCL error. Then,
when you install V3.1, you can change the DUMMY to the
real dataset, and MXG will automatically create obs in
the new QAPMIOPn datasets.
Yes, this is an incompatibility between MXG 11.11 and
MXG 12.12, that I could have avoided by commenting out
the invocation of _TQAPIOP in member TYPEQAPM, but then
you would have had to modify the source code to create
observations in the future, so I chose this JCL change
as the lesser of the two choices.
As of Newsletter 27 press time, the new 3.1 code had not
been tested with 3.1 data; only 2.2 data was available.
Change 12.291 ERROR. INVALID OFFSETS IN USER SEGMENTS with Landmark
TYPEMON8 CICS/ESA Version 1.1 records converted back to Version 8
TYPETMON format may result because MXG's test is true when the
Feb 11, 1995 offset in the record is greater than record length even
when there is no segment - the number of segments must be
added to the test. The three lines in TYPEMON8 now read:
IF FILECOL+FATNUM*TAFATLEN GT LENGTH+1 AND FATNUM GT 0 ..
IF UATCOL+UTNUM*TAUATLEN GT LENGTH+1 AND UTNUM GT 0 ..
IF MROCOL+MRONUM*TAMROLEN GT LENGTH+1 AND MRONUM GT 0 ..
The one line in TYPETMON now reads:
IF FILECOL+FATNUM*TAFATLEN GT LENGTH+1 AND FATNUM GT 0 ..
Thanks to Bill Padilla, Farmers Group, USA.
Change 12.290 Amdahl MDF will produce negative/trashed CPU values if
VMAC7072 you use the same LPAR number for different LPARs. The
Feb 10, 1995 error, introduced in microcode ML 6, has been fixed in
Amdahl's ML 8.09, and your SE can show you how to define
your IOCDS with a unique Partition Number, but you must
correct the error, or your CPU busy data is invalid.
Thanks to Dean Brown, Pacific Bell, USA.
Change 12.289 Amdahl MDF has been providing real MVS CPU utilization of
VMAC7072 "this" MVS in TYPE70 dataset since their microcode ML 6;
Feb 10, 1995 Change 12.288 added the PCTMVSBY/MVSWAITM fields which
contain the MDF "CPU using" time for "this" Domain.
A new MDF option, called "Wait Complete=No Reporting",
(available for ML 6, included as a feature in ML 8.09)
can store the Real CPU Active Time (instead of Dispatch
Time) into the TYPE70PR LPAR data segments in type 70.
You can tell that the option is enabled and the CPU times
are real if LCPUWAIT='N' (not enabled, LCPUWAIT='Y'), as
the 'N' record looks like a non-wait-completion PR/SM.
(Without the option, MDF LPAR measures are "dispatch"
time, not "CPU using" time, so you had to use Amdahl's
APAF to get the real CPU busy time of other LPARS. This
new option lets you now use TYPE70PR/ASUM70PR for real
CPU measures, using APAF data for deeper analysis.)
Jul 9, 1997: See Change 15.023 for update on option.
Change 12.288 PR/SM APAR OW07986 puts "MVS Wait" time back in type 70
VMAC7072 records, so the new variables PCTMVSBY MVSWAITM and
Feb 10, 1995 MVSWAIT0-MVSWAITF report the MVS view of CPU busy/wait
contrasting with the existing variables PCTCPUBY (LPAR
dispatch perspective) and PCTCPUEF (LPAR effective
perspective). Looking at one sites numbers, it appears
that the sum of the "MVS Wait" plus the sum of "CPU Eff"
plus the "Physical LPAR" is very close to total duration,
which implies that PCTCPUBY-PCTMVSBY is the true LPAR or
MDF overhead. The text of the APAR includes a complete
discussion of the differences between "MVS CPU Busy" in
PCTMVSBY and "LPAR CPU Dispatch" in PCTCPUBY.
Thanks to Boris Ginis, BGS Systems, USA.
Change 12.287 ITRF note. Candle has corrected the problems that
VMACITRF were reported in Newsletter 26, and the blank field for
Feb 10, 1995 RNJOB, etc., are now populated (except in the TYPE= '13'x
thru '16'x Database records, which being cut from the IMS
Control Region, have no associated Job information).
A small sample of their log records post-APAR have been
validated, and I have no reason to believe there are any
further problems, but as the Newsletter went to press,
the APARs were too new to have had stress testing, so I
would appreciate feedback from active ITRF users.
There was no change to the VMACITRF code; this change is
solely for documentation.
Change 12.286 Zero observations in dataset CISIZE can occur, because
ANALSMF the logic detecting that data was held was unrobust. The
Feb 10, 1995 test IF INCI4K=0 THEN DELETE; must be expanded to
IF SUM(INCI4K,INCI8K,INCI16K,INCI22K,INCI26K)=0 THEN ....
Thanks to Freddie Arie, Lone Star Gas, TEXAS.
Change 12.285 Support for Type 99 Subtype 1 has been added, creating
EXTY99TT two new datasets:
EXTY99U1 TYPE99TT - Trace Table Entries
VMAC99 TYPE99_1 - System State Information
Feb 9, 1995 Don found this data so useful in his CPExpert product,
that he shared his coding for this record!
Thanks to Don Deese, Computer Management Sciences, USA.
Change 12.284 Support for IMF 3.1 (for IMS 5.1) is already in MXG 12.12
VMACCIMS because Boole expects there will be no significant change
Feb 9, 1995 in the format of the IMF records in their new version.
Some old MVS fields may be zero when MVS 5.1 is in Goal
Mode, but the fields will still be there, so the MXG code
is expected to be compatible.
Change 12.283 MXG 12.07 Only. TCP/IP records cause INVALID DATA FOR
VMACTCP VARIABLE NEW because the word NEW was accidentally left
Feb 8, 1995 in columns 1-3 of line 020100. Remove "NEW". (NEW was
left as a marker that I needed to add the new variable,
FTPSTRCT to the LABEL and KEEP= lists, so not only did I
fail to remove the NEW, I also failed to add FTPSTRCT
until this change. The syntax check passed because NEW
was just another variable to be INPUT; only when real
data records were read did the error surface.)
Thanks to Richard Clary, Entergy Services, USA.
Change 12.282 Support for Velocity Software's XAMAP Version 2.2 added
VMACXAM many new variables for VM/ESA 2.2, and a few variables
Feb 8, 1995 were renamed. This code has not been tested with actual
data. The new fields were added at the end of the record
so their new version appears to be compatibly made.
Change 12.281 ANALRACF's problem with PROC TRANSPOSE error will not be
ANALRACF corrected, because the enhancements in Change 12.280
Feb 7, 1995 eliminate the need for ANALRACF. The real error was in
my original design of TYPE80, which creates one
observation for each segment in each type 80 record, and
ANALRACF was one user's solution to rebuild each logical
event from the pieces; TYPE80A creates an observation for
each event, solving the need (I believe) for ANALRACF.
Change 12.280 RACF TYPE80A has always decoded RACF events, but this
EXTY8009 enhancement adds new datasets that decode RACF Commands
EXTY8010 that have been requested by Security Administrators (so
EXTY8011 they can generate RACFRW reports from MXG datasets!).
EXTY8013 Seven new datasets are added by this change:
EXTY8014 Dataset Command
EXTY8019 TYPE8009 - ADDGROUP command
EXTY8023 TYPE8010 - ADDUSER command
IMAC80A TYPE8011 - ALTDSD command
VMAC80A TYPE8013 - ALTUSER command
Feb 7, 1995 TYPE8014 - CONNECT command
TYPE8019 - PERMIT command
TYPE8023 - REMOVE command
TYPE80CM - RACF commands not decoded above.
Most of the fields in these command records are decoded,
but some are not; there are 2- and 4-byte bit maps (eg.,
for Keywords specified on the command, where one bit
is used per keyword), and rather than creating 32 or 64
more variables, I chose to store the field as a character
variable with $HEX format to save DASD space. Of course,
this means you must learn which bit does what, and thus
you must become familiar with IBM Table 3, "Data Type 6
Command-Related Data" in the RACF Macros and Interfaces
manual, SC28-1345, in SMF Records chapter, until I have
time to document these bit-maps in member ADOC80A.
TYPE80A should replace TYPE80/ANALRACF, because TYPE80A
creates an observation for each event, whereas TYPE80
creates an observation for each segment in each event,
and ANALRACF was created to reconstruct the events from
the segments! This code has been tested with RACF 1.9.2
data.
Thanks to Richard Banks, Texas Comptroller of Public Accounts, USA.
Change 12.279 DB2STATS can be used to audit if DB2 SMF records were
DIFFDB2 lost. DB2 counts log records written and not-written in
VMACDB2 two ways: by destination (GTF, SMF, etc. in MXG variables
Feb 19, 1995 QW1Bxxxx-QW9Bxxxx) and by writer (accounting, audit, etc,
in MXG variables QWS1xxxx-QWS8xxxx). With a simple:
PROC PRINT DATA=PDB.DB2STATS;
VARIABLES QW1B: QW2B: QW3B: QW4B: QW5B: QW6B:
QW7B: QW8B: QW9B: ;
you can scan the QWnBNM (Destination Name) for SMF, and
then examine QWnBSRNW for that "n" to determine if any
SMF records were lost. If there were records lost, you
can then use a simple:
PROC PRINT DATA=PDB.DB2STATS;
VARIABLES QWS1: QWS2: QWS3: QWS4: QWS5: QWS6:
QWS7: QWS8: ;
to examine which IFCIDs (QWSnIID) had lost records, and
see whether accounting, audit, stat or trace records were
not written. See MVS Technical Notes in Newsletter 27
for a discussion of why DB2 might lose SMF records.
Impress your auditors with your knowledge of the exposure
and that it is detectable!
-Variable QWACFLGS is now INPUT $CHAR2. (it was $CHAR1.)
and this also corrects the value of QWACPKGN.
Thanks to Chuck Hopf, MBNA, USA.
Change 12.278 ERROR.TYPE110.SUBTYPE 2, STID=57, SKIP=84 message and hex
VMAC110 dump on the log with CICS/ESA 3.3.0 results because there
Feb 7, 1995 are undocumented bytes observed at the end of record.
This diagnostic message has no effect on the type 110
processing, so your datasets were built correctly (it's
there so I can detect if IBM adds new, useful data, but
in this instance, they simply added nulls!), but the dump
on the log and the message can be eliminated:
Inside the DO group IF STID=57 THEN DO;
replace IF SMFPSRVR EQ 33.0 THEN SKIP=SKIP-336;
with IF SMFPSRVR EQ 33.0 THEN DO;
SKIP=SKIP-336;
IF SKIP GT 0 THEN DO;
INPUT +SKIP @;
SKIP=0;
END;
END;
Thanks to Bruce Widlund, Merrill Consultants, USA.
Change 12.277 Support for ACC/SRS, Allocation Control Center/Space
EXTYACC Recovery System (from Mitchem Technologies) user SMF
IMACACC record. SRS is like STOPX37; an SRS record is written
TYPEACC whenever SRS protected an x37 ABEND by adding secondary
VMACACC space. ACC controls dataset allocation and lets you
Feb 6, 1995 change anything on a DD card. The record is written when
either SRS recovers, or when ACC sends a message.
===Changes thru 12.276 were included in MXG 12.07 dated Feb 6, 1995===
Change 12.276 Continued enhancement to IBM-like RMF reports. The MXG
ANALRMFR device reports can be selected by:
Feb 5, 1995 SG =, Storage Class selection
DN =, Device Number selection
LCU=, Logical Control Unit selection
and Coupling Facility report can be selected by:
RSYSPLX=. Sysplex report selection.
Format MGRMFA3 was removed for variable LCU in the I/O
queueing report (it caused hex instead of decimal values)
and this edition supports more than two IOPIQIDs (using
PROC TRANSPOSE and ARRAY processing).
Change 12.275 The old analysis of tape drives, using PDB.STEPS was
ANALTAPE revised to use the new ANALCNCR macro to speed up the
Feb 5, 1995 analysis, but using the ASMTAPES MXG Tape Allocation
Monitor records and datasets PDB.TYPETALO and member
ASUMTALO is strongly recommended as more accurate.
Change 12.274 New analysis of initiator concurrent use (i.e., how many
ANALINIT jobs are concurrently in initiation), using ANALCNCR (see
Feb 5, 1995 Change 12.272). Unfortunately, there is no way to know
Feb 19, 1995 which initiator is actually used, but at least we can
determine how many jobs are waiting or running in any JES
job class. There are also some limitations to initiator
analysis. Jobs submitted into HOLD cannot be included in
measurement of jobs waiting, because we do not know when
the job was released from hold, so these jobs are deleted
(TYPERUN=HOLD) from the analysis. (Note that jobs that
are read-in and then later placed in HOLD cannot be
detected and are thus inadvertently included as queued.
You might be able to establish a criteria for queue time
that would let you identify these probably-held jobs -
like queue time greater than one hour for 15 minute job
class - and then delete these exceptions from analysis.)
For Duplicate Jobname hold, the job is not counted in the
input queue until the previously-initiated, same-named
job has ended. Finally, the analysis only applies if the
job observation in PDB.JOBS actually completed execution;
i.e., only if INBITS contains a J in the third position.
The analysis first separates held jobs from jobs to use,
and then invokes %ANALCNCR twice to count the number of
jobs in execute/queued/held/samename, and then these 4
datasets are merged for the report. Buckets are created
for distribution values of job counts, and you can change
the number and values of the buckets. The default values
are 5, 10, 15, 20, 25, 30 , 35, and > 35 jobs. ANALINIT
is designed for MXG's PDB.JOBS, but it shows how "open"
MXG routines are to point out that one MICS and MXG user
used ANALINIT with MICS's BATJOBxx dataset, simply
by replacing these MXG variable names with their MICS
counterparts:
MXG Variable MICS Variable
READTIME RDRTS
JINITIME STARTTS
JTRMTIME ENDTS
TYPRUN='HOLD' JOBHOLD GT 0
TYPETASK not applicable
INBITS not applicable
RDRTM JOBRDRTM
Thanks to ???,???, USA, who raised the question at CMG.
Change 12.273 Complete revision of the summarization of Tape Allocation
ASUMTALO using the ASMTAPES Tape Mount and Allocation monitor now
TRNDTALO uses ANALCNCR (See Change 12.272). Early test sites that
Feb 5, 1995 have previously used ASUMTALO/TRNDTALO will need to go
Feb 20, 1995 back and reprocess TYPETALO with ASUMTALO, because the
earlier version of ASUMTALO/TRNDTALO kept averages, but
this version keeps totals (like other ASUM... members).
In ASUMTALO, SAS Compression is turned off, just in case
you had turned it on. Because few variables are kept,
compression saved no DASD space, but caused a significant
increase in CPU time, 230 to 590 seconds with a million
observations as input. Because allocations are not
written until termination, TRNDTALO re-drives the week's
detail in TYPETALO back through ASUMTALO to eliminate the
overlap and increase the accuracy of allocation trends.
See ADOCTALO (when complete, hopefully in MXG 12.12 but
still in progress at press time) for more discussion.
This note was added after MXG Newsletter 27:
TRNDTALO was enhanced to 'fix' the problem of tape
drive allocations that are in effect when the SMF data
is dumped. Since this would be a daily occurrence,
detail data from the WEEK.TYPETALO is resummarized in
TRNDTALO, but since ANALCNCR runs quickly, the impact
is minimal. The duration of a shift is defined as the
actual shift duration as defined in your IMACSHFT
(whether or not we found data during all intervals).
To avoid the remaining overlapping allocations causing
data perturbations, if an interval has already been
summarized (it was in last weeks TREND database) the
duration, max, and buckets for incoming records from
the WEEK.TYPETALO will be set to 0. Thus, the
averages will be correct but (for those small number
of overlapping allocations) the MAX and buckets will
be slightly less than accurate.
Change 12.272 A powerful new MXG tool for the analysis of concurrency
ANALCNCR (how many tape drives, or initiators, or programs ... are
Feb 5, 1995 concurrently being used. Previously, I used brute force
to count concurrency; an observation with a start and end
time was exploded into many observations, with the time
incremented from start to end by a delta-value, and then
observations were summed by time to count concurrency.
Thus a one-hour step record would explode into 600 obs if
the delta-value was 6 seconds. While that algorithm was
accurate, its execution required lots of DASD and time.
When someone at CMG asked about initiator usage, Chuck
used VMXGSUM and the brute force approach in an example,
but I realized that a general purpose routine was really
needed, and then remembered the algorithm in my 1973
simulator (and also recalled that an MXG user had made a
similar suggestion long ago). I gave the algorithm to
Chuck, and the result is this fine new tool: %ANALCNCR.
This concurrency algorithm, instead of exploding obs and
summing by timestamp, creates only two observations per
event, one at the start, with a positive value of the
variable to be counted, and a second at the end, with a
negative value. Then, sorting and scanning by time,
adding or subtracting counts as events occurred in time,
the number of concurrent "things" is easily counted with
no explosion in the number of observations. Furthermore,
there is no delta-interval; the clock resolution of the
timestamp automatically counts any "thing" that exists
for more than one clock interval. The performance of
ANALCNCR over the old algorithm is phenomenal; ASUMTALO
with 860,000 records took only 20 minutes elapsed and 6
minutes of CPU time; the old logic took that time for
only 8000 records! Not only is ANALCNCR a stand-alone
analysis module, it is already used in MXG members
ASUMTALO,ASUMINIT, and ANALTAPE, with more to come!
The logic creates the "detail" data set with the count
value and the duration at that count value (and the
"detail" can have fewer observations than the number of
original events!), and ANALCNCR will (optionally, but
usually) summarize the "detail" data set into intervals
(eg. hourly), as well as creating percentage-of-time
distribution values. There are even canned printed and
plotted reports in Chuck's fine piece of work.
Thanks to Chuck Hopf, Merrill Consultants, USA.
Change 12.271 Further enhancements after stress tests of XMXGSUM (which
XMXGSUM will eventually replace VMXGSUM). The compiler fakers
VMXGSUM (IF X=. THEN X=.) which eliminated the UNINITIALIZED VAR
Feb 5, 1995 messages were removed, as they were causing dropped
variables to be re-created in the output data set.
If you used DATETIME=xxx and also used xxx in a MINTIME=,
MAXTIME=, or SUM= argument, xxx was inadvertently dropped
(error was introduced by Change 12.084 when the DROP of
DATETIME was added). A new argument, DSNLABEL= was added
to supply a label for the output dataset created. Lots
of effort went into the parsing logic that supports the
use of multiple input datasets that have data set options
(like IN=, KEEP=, END=), since we now force a KEEP=
option on the input datasets to improve performance and
minimize work DASD space. KEEPALL= and DSNLABEL= were
also added to VMXGSUM for consistency.
Thanks to Diane Eppestine, Southwestern Bell, USA.
Thanks to Roger Zimmerman, Kemper Financial Services, USA.
Change 12.270 DB2PM-like Locking Reports were revised, now using IFCID
ANALDB2R 172 for Deadlock/Timeouts, and syntax errors in PMLOK02
Feb 5, 1995 (missing END) were corrected, and PMLOK03 was revised.
See also Change 12.250.
Change 12.269 Preliminary support for Boole & Babbage's CMF VSAM MMR
EXCMFVAS Historical Records creates 24 new datasets, but only the
EXCMFVCA two most important datasets are complete (CMFVASRE and
EXCMFVCP CMFXDRE). Others will be supported as-requested. These
EXCMFVCX datasets are created directly from the VSAM file:
EXCMFVDI CMFVAS - Address Space
EXCMFVDM CMFVCA - Cache
EXCMFVDX CMFVCP - CPU
EXCMFVEN CMFVCX - Channel Path
EXCMFVES CMFVDI - Dataspace Info
EXCMFVIS CMFVDM - SRM Domains
EXCMFVLP CMFVDX - Device
EXCMFVLX CMFVEN - Enqueue
EXCMFVPD CMFVES - ESTORE Criteria
EXCMFVRW CMFVIS - Interval Summary
EXCMFVSC CMFVLP - LPAR/Domain
EXCMFVSD CMFVLX - LCU
EXCMFVSM CMFVPD - Page Data Sets
EXCMFVSP CMFVRW - Resolve Warnings
EXCMFVSS CMFVSC - SYSID CPU
EXCMFVSU CMFVSD - Swap Data Sets
EXCMFVSY CMFVSM - SMS Storage Group
EXCMFVWK CMFVSP - SYSID Paging
EXCMFVWT CMFVSS - SYSID Swapping
EXCMFVWU CMFVSU - SYSID Summary
IMACCMFV CMFVSY - Global SYSID
TYPECMFV CMFVWK - Workload
VMACCMFV CMFVWT - Wait/Use Summary
Feb 18, 1995 CMFVWU - Wait/Use
Feb 23, 1995 See comments in member VMACCMFV for testing status.
There's lots and lots of data here.
Change 12.268 Support for BGS's BEST/1 I/O Monitor SMF record adds four
EXBGSCPU new datasets:
EXBGSDEV B1MONCPU - I/O Interrupts by CPU
EXBGSMON B1MONDEV - I/O Interrupts by Device
EXBGSPGN B1MONMON - Resources consumption of the B1MON itself
IMACBGSI B1MONPGN - I/O Interrupts by Perf Grp by Device
TYPEBGSI Their monitor is a powerful tool for I/O analysis.
VMACBGSI This code has only been bench checked with a hex dump.
Change 12.267 Support for Xerox Print Service Manager user SMF record
EXTYXPSM adds new dataset TYPEXPSM which tracks print and CPU
FORMATS resources, with lots of good quality data for managing
IMACXPSM and measuring print activity with XPSM. New records
TYPEXPSM with fixes for all reported problems is in hand, but it
VMACXPSM won't be tested before the Newsletter deadline, so check
Feb 4, 1995 this text in member CHANGES of MXG 12.12 for an update.
Thanks to Tom Bell, Rivendel Consulting, USA.
Change 12.266 If you use TYPEMON8 to process Landmark records that were
TYPEMON8 converted back to Version 8 format from CICS/ESA 1.3 data
Feb 4, 1995 TYPEMON8 fails with invalid records. Their conversion PGM
adds unexpected records at the beginning of the file with
value of 'HH' in TMMDREC. Expanding the test to read:
IF TMMDREC='DD' OR TMMDREC='HH' THEN DELETE;
appears to have resolved the problem. (Of course, the
real solution is to read the native 1.3 records with new
support in MXG's new TYPETMON member; see Change 12.151.)
Thanks to Bill Padillia, Farmers Group, USA.
Change 12.265 IMF variables ABENDSYS/ABENDUSR in CIMSPROG dataset were
VMACCIMS incorrectly documented and wrongly input. Instead of the
Feb 4, 1995 expected two-byte hex fields for each, the codes are in
a four byte field with value xxsssuuu, so the variables
are now input @90 for ABENDSYS and @91 for ABENDUSR, and
these two lines were inserted after the @; after INPUT:
ABENDSYS=FLOOR(ABENDSYS/16);
ABENDUSR=MOD(ABENDUSR,4096);
Thanks to Mel Lallement, Cessna Aircraft, USA.
Change 12.264 Support for RMDS Version 2.1 (completely incompatible!).
IMACRMDS Not only were the key values changed from alphabetic to
VMACRMDS numeric, but also the detail directory data from the
Feb 3, 1995 Archive activity no longer exists, so there are 46 fewer
variables in Version 2.1 than in Version 1.3/1.4. I have
removed those 46 variables from the KEEP= list for the
dataset TYPERMDS, but those variables are now in member
IMACRMDS, in a comment block inside macro _KTYRMDS, so
if you are still on the old release and want them kept,
you simply remove the comments and all 46 additional
(and now archaic!) variables will be kept. Seven new
variables were also added by RMDS 2.1. Fortunately, I
can recognize Version 2.1 records internally, so it is
not necessary to update macro _RMDSVER in IMACRMDS to
tell me you have installed Version 2.1 (although _RMDSVER
still is used for Version 1.2 versus Version 1.3/1.4).
The new version has set a world record for the largest
number of bytes to hold a date-time field; the previous
12-byte format (YYMODDHHMMSS) was expanded to 26 bytes:
YYYY.MO.DD.HH.MM.SS.uuuuuu (with microsecond resolution)!
Change 12.263 Support for TPX 4.0 SMF record adds 9 new TPX datasets:
EXTPXASS TPXASSIS - User starts/ends session assist session.
EXTPXCOI TPXCONFI - User inits/terms conference session.
EXTPXCOJ TPXCONFJ - User joins/leaves conference session.
EXTPXGRA TPXGRANT - User grants temporary view authority.
EXTPXPLY TPXPLYBK - User starts/ends playback session.
EXTPXREC TPXRECRD - User starts/ends record session.
EXTPXTRI TPXTRNGI - User init/terms training session.
EXTPXTRJ TPXTRNGJ - User joins/leaves training session.
EXTPXVIE TPXVIEW - User starts/ends session view session.
IMACTPX These new subtypes were added compatibly, but the TPX
VMACTPX version number change will cause an MXG error message
Feb 1, 1995 "Unrecognized TPX Version=4.0". Until you get the new
version with full support, you can circumvent that error
by inserting a line reading
ELSE IF TPXVER=:'4.0' THEN TPXVER=' 4.0';
after the similar ELSE IF TPXVER=:'3.5'.... statement.
Thanks to Warren Hayward, TJX Companies, USA.
Change 12.262 Zero observations in dataset CACHE90 with RAMAC devices
VMACACHE behind both 3990-3 and 3990-6 cache controllers because
Feb 1, 1995 CLEN (IBM field RF8CLEN) has zero value. Insert the
statement IF CLEN=0 THEN CLEN=108; after the statement
INPUT @OFFDATA+15 CLEN &PIB.2. @;
as a circumvention while we still pursue the IBM error.
Thanks to Miguel Sanchez, Florida Power and Light, USA.
Thanks to Harry Price, Florida Power and Light, USA.
Change 12.261 Support for APAR OW05435/OW07895 adds new variable
VMAC79 R793CUT to dataset TYPE793, but no format for the data
Jan 29, 1995 was given - I have guessed it's really CPU time, but am
pursuing with IBM.
Change 12.260 Reserved Change Number.
Jan 29, 1995
Change 12.259 Replacement support for TYPEZRB RMF Monitor III VSAM data
ASMRMFV for MVS/ESA 4.3 is tested for DSIG3, SSHG3, ASIG3, GEIG3
IMACRMFV & DVTG3 tables and work is planned for the UWDG3, CSRG3,
TYPERMFV & PGPER tables - both the ASMRMFV assembly program and
VMACRMFV the VMACRMFV SAS programs must be changed to support the
Jan 29, 1995 additional segments, but their DSECTS are missing
Feb 20, 1995 -RMF VSAM data is now compressed, so you must assemble the
program ASMRMFV (in member ASMRMFV) for the 2-step job:
-ASMRMFV reads the VSAM file from DDNAME of RMFVSAM,
invokes IBM's Data Set Decompression Interface Service
module (ERB3RDC) to decompress the data, and then writes
each section as a logical record to the output RMFBSAM
DDNAME, which is a temporary file on DASD.
-TYPERMFV reads the INFILE of RMFBSAM to create the MXG
datasets (all starting with ZRB....., and the dataset
names and variable names are the same as those created
by the original TYPEZRB code). In the example JCL below,
the output MXG datasets will be written to the DDNAME of
ZRBPDB because of the USER=OPTION on the EXEC statement.
-First, assemble the ASMRMFV program into YOUR.LOADLIB.
-Second, use this JCL:
//ASMSTEP EXEC PGM=ASMRMFV
//STEPLIB DD DSN=YOUR.LOADLIB,DISP=SHR
//RMFVSAM DD DSN=YOUR.VSAM.RMFIII.DATA,DISP=SHR
//RMFBSAM DD UNIT=SYSDA,SPACE=(CYL,(100,100)),
// DSN=&&BSAMRMF,DISP=(,PASS)
//MXGSTEP EXEC MXGSAS,OPTIONS='USER=PDBZRB'
//RMFBSAM DD DSN=&&BSAMRMF,DISP=(OLD,DELETE)
//PDBZRB DD DSN=YOUR.OUTPUT.PDB.LIBRARY,DISP=(,CATLG)
%INCLUDE SOURCLIB(TYPERMFV);
All storage variables that contained FRAME counts were
converted into bytes and formatted with MGBYTES format,
so installed/used values can be compared easily, and the
labels indicate "storage" rather than "frames".
Many new variables are now created in ZRBASI and ZRBGEI.
This support is preliminary, in that it has not had any
extensive usage by real users, although I have had real
data to look at. Some of the fields may be accumulated,
and it may be necessary to add a post-processing step to
de-accumulate, but I need feedback from active users to
add the polish to this (long-overdue) enhancement. I did
not compare my output with snapshots of RMF III screens,
so please verify my calculations. The next interation of
ASMRMFV will provide record selection and will print a
summary report of records found/written. Originally,
ASMRMFV was named ASMMON3.
Thanks to Don Friesen, BC Systems, CANADA.
Thanks to Danal Estes, Logical Resources, USA.
Thanks to Lawrence Jermyn, Fidelity Systems, USA.
Change 12.258 JCLTEST6 may fail with LIBRARY MONITASK UNASSIGNED in
JCLTEST6 step TESTIBM2 or BUILDPDB, if you have changed member
Jan 27, 1995 IMACMONI to specify MACRO _LMONTSK MONITASK.MONITASK %.
JCLTEST6 invokes ASUMCICS in TESTIBM2 in member TYPE110,
and step BUILDPDB also includes ASUMCICS, and if you have
added the MONITASK ddname in IMACMONI, then both steps
will require that ddname. Although obscure, I have put
//MONITASK DD in both steps in the test job stream.
Thanks to Angela Mulcahy, UJB Financial Corp, USA.
Change 12.257 Support for TCP/IP Version 3.1 requires MXG 12.07 or
VMACTCP later to be compatible, but sites with MXG 12.01-12.06
Jan 27, 1995 can process Version 3.1 records by changing the LENGTH
Feb 3, 1995 tests (added by MXG Change 12.041)
from 200 to 204 for TCPEVENT='FTPSERVER'
from 86 to 90 for TCPEVENT='TELSERVER'.
TCP/IP Version 3.1 added FTPLCLUS (local user ID) and
FTPLCLPN/FTPRMTPN (local/remote port) in dataset
TYPETCPF (TCPSERVER), and added TELLCLPN/TELRMTPN in
dataset TYPETCPT (TELSERVER). (FTPLCLUS does exists in
records written by both TCP/IP Versions 2.2.1 and 3.1).
Thanks to Wanda Prather, The Johns Hopkins University APL, USA.
Change 12.256 Variable TRANSACT in Landmark is an eight-byte variable,
TYPETMON but only the first four bytes are used for transaction
TYPEMON8 name; the final four bytes are hex nulls ('00000000'X).
Jan 26, 1995 If you test for TRANSACT='ABCD', the test will always
fail, because SAS pads the literal 'ABCD' with blanks,
and ABCD-blanks is not equal to ABCD-hex-zeroes. You can
circumvent this effect by using the colon-modifier in the
equality: IF TRANSACT=:'ABCD' THEN ... which test true
for all values of TRANSACT that start-with ABCD. However,
I have decided to correct this problem at the source, and
have inserted the following TRANSLATE after each input in
both Landmark members:
TRANSACT=TRANSLATE(TRANSACT,' ','00'x);
Thanks to Tim Carne, Nottinghamshire County Council, ENGLAND.
Change 12.255 TYPE78CF variable PCTDIRPT is mislabeled as percent delay
VMAC78 and was miscalculated. The line
Jan 25, 1995 IF NRCMPTSM GT 0 THEN PCTDIRPT=100*PCTDIRPT/NRCMPTSM;
was replaced with
IF (CHPIDTKN+PCTDIRPT) GT 0 THEN
PCTDIRPT=100*PCTDIRPT/(CHPIDTKN+PCTDIRPT);
with new LABEL of 'PERCENT WHEN*DIRECTOR PORT*WAS BUSY'
Note: See Change 15.061, which revised this change.
Thanks to Thomas Heitlinger, FIDUCIA, GERMANY.
Change 12.254 -BatchPipes/MVS variables INTBTIME/INTETIME are in the
FORMATS SMFSTAMP8 format rather than TODSTAMP8 (obvious, when
VMAC91 you have test data records!). Find their INPUT after
Jan 25, 1995 IF SMF91PRL GE 60 THEN DO; and use SMFSTAMP instead of
Feb 9, 1995 TODSTAMP8 for INTBTIME and INTETIME (SMF91IST/SMF91IET).
Note: Do not change the first INPUT of only INTETIME, as
it (SMF91INT) really is in TODSTAMP format!
The logic for INTBTIME/INTETIME/DURATM is now INPUT only
for the interval subtypes 2 and 12 (their un-cleared, non
zero values were confusing). INTETIME is set to SMFTIME
and INTBTIME/DURATM will be missing in non-intervals.
-The lines with +4 after the INPUT of SMF91IWB and after
the INPUT of SMF91OWB must be deleted to correct the
values of SMF91IEC/SMF91OEC/AFSTTIME/ALSTTIME.
-Variables SMF91SST and SMF91STR are now decoded by format
for subsystem status (ACTIVE/STARTING/STOPPING) and trace
activity (ERROR/ FUNCTION/FLOW).
-APAR PN66074 corrects the value of SMF91PLR, the Pipe's
LRECL, which was 4 too large before the APAR.
Thanks to Lawrence Jermyn, Fidelity Systems Company, USA.
Change 12.253 MXG 12.04-12.06 only. ACF2 SMF record still gets an
VMACACF2 INPUT STATEMENT EXCEEDED RECORD LENGTH error results
Jan 24, 1995 because the code added by Change 12.072:
IF ACVMFIDC GT 0 THEN DO _I_=1 TO ACVMFIDC;
must be IF ACVMFIDC GT 0 THEN DO _I_=3 TO ACVMFIDC;
(the first two authids have already been input!).
Thanks to Peter Arcoudis, NRMA, AUSTRALIA.
Thanks to Dov Brosch, Solomon, USA.
Change 12.252 MVS/ESA 5.1, Goal Mode, TYPE72GO dataset variables from
EXTY72DL the Work/Resource Manager State Samples (all start with
IMAC7072 R723R... or R72XR...) were moved from TYPE72GO into new
VMAC7072 dataset TYPE72DL (for Delay, since these state samples
BUILDPDB report workload delays), because there can be more than
WEEKBLD one pair of Begin-to-End/Execution statistics for these
MONTHBLD "Transaction Service Class" observations (R723TYPE=3).
For example, if the SRVCLASS is a logical service class
(i.e., for CICS transactions), and those transactions
also call on IMS, the TYPE72GO for the SRVCLASS would
have delay state sections for both the CICS region and
the IMS region delays, but the original implementation
only kept the first set of delay statistics.
Additionally, these variables only exist in R723TYPE=3
records, so creating the new dataset will save DASD by
reducing the size of TYPE72GO dataset.
And dataset TYPE72DL will only have observations if you
have Transaction Service Classes, R723TYPE=3 records.
Thanks to Don Deese, Computer Management Sciences, USA.
Change 12.251 DB2 Transit Report failed with NOT SORTED because the
ANALDBTR pairing of the 015-016-017-018 IFCIDs in ANALDBTR added
ANALDB2R CUBTOKEN (Change 12.124), causing the S015S018,S016S018,
Jan 21, 1995 S017S018, or S018S018 data to be out of sequence with the
rest of the trace events. The fix in ANALDBTR was to add
PROC SORT DATA=SxxxS018 OUT=SxxxS018;
BY SYSTEM QWHSSSID QWHSACE QWHCCN QWHCCV BEGEVENT;
for each of the four SxxxS018 datasets at the end of the
_015PAIR macro. In addition, the design of the Transit
Report was changed to minimize DASD required. The report
previously built the TRANSIT dataset (747 variables!) and
then did a PROC PRINT; now, the report is produced with
PUT statements, and the TRANSIT dataset is now built with
only 6 variables (for a summary report of event counts).
Thanks to Dan Null, Caterpiller, USA.
Change 12.250 DB2 Locking Contention Report PMLOK02 in ANALDB2R was
ANALDBTR incorrect, and the pairing logic for 044-045-054 IFCIDs
XDB2LOCK in ANALDBTR was also incorrect. ANALDBTR has been fixed
Jan 20, 1995 while PMLOK02 is still being repaired. However, member
XDB2LOCK provides an analysis of DEADLOCK/TIMEOUT events
that may meet your needs, and can be easily tailored if
you need more details on these contention events.
Thanks to Charlie Royster, AHOLD, USA.
Change 12.249 The DEVCYL value (cylinders per device) for RAMAC devices
VMXGVTOF is different than for a native device. For native 3390-3
Jan 16, 1995 DEVCYL=3340, but for RAMAC 3390-3, DEVCYL=3339, which is
the number of cylinders that you can really use! So why
is the value different? Because native devices have 15
alternate tracks (one cylinder), which DEVCYL counts, but
RAMAC alternate track support is internal, and does not
count the extra cylinder. In VTOC processing, MXG has
always subtracted one from DEVCYL so that DEVCYL*DEVTRK
would give you the correct capacity, but for a RAMAC VTOC
DEVCYL ends up one cylinder too small!
(The impact of one cylinder of capacity would probably
be overlooked, but this site used exact values of DEVCYL
in a FORMAT to identify which model 3380/3390 was used,
and the off-by-one value fell thru their format!).
At present, there does not seem to be a way to tell that
the VTOC is from a native device versus a RAMAC device,
so I may have to resort to a table of expected sizes, but
I await IBM's response.
Thanks to Paul Polley, PolyGram Holding, Inc., USA.
Change 12.248 The //IMSSUM DD had RECFM=F,LRECL=132,BLKSIZE=132 when it
ASMIMSLG should have been RECFM=FB,LRECL=132,BLKSIZE=23364. This
Jan 16, 1995 can only help the elapsed run time! (Also, the LRECL=132
files with BLKSIZE=13200 were increased to BLKSIZE=23364,
for half track on 3380s.).
Thanks to Don Cleveland, Blue Cross and Blue Shield, USA.
Change 12.248 Cosmetic. The comments and examples for using IMACFILE
IMACFILE were revised, and the list of variables available to the
Jan 16, 1995 exit was corrected.
Thanks to Mr. Loewenthal, Zonussi Elettrodomestici, ITALY.
Change 12.247 Variable LSCDSTYP replaced a reserved field in NPMINSES
VMAC28 dataset in NPM 2.2, but was overlooked until now.
Jan 16, 1995
Thanks to John Steigerwald, Canadian General, CANADA.
Change 12.246 Matching CICSTRAN with DB2ACCT found occurrences when the
ANALDB2C DB2 plan continued to execute long after the CICS trans
Jan 12, 1995 had ended, and a trace of these transactions was needed,
so a new %MACRO DBUGDB2C will now print out the detail
events for a selected NETSNAME/UOWTIME value. Also, the
matchup logic now prints notes on the log on selected
mismatches (first 5, then every 100,000th) so you can
diagnose data problems (like one day's DB2 with another
day's CICS!). See comments in the member, and the DB2
Technical Note in Newsletter TWENTY-SEVEN.
Thanks to Ed Long, Fidelity Systems, USA.
Change 12.245 INVALID DATA FOR OPENDTE in type 14/15 records with nulls
VMAC1415 in that date field are corrected by adding ?? between
Jan 12, 1995 OPENDTE and PD4. and by wrapping the OPENTIME and OPENTM
calculations with IF OPENDTE GT 0 THEN DO; ... END;
I do not know why these records, clearly written after
APAR OW00484 was installed, have zero date, but only one
such record has been found.
Thanks to J. R. Bleeker, Newport News Shipbuilding, USA.
Change 12.244 Variable LCU or LCUID was FORMATted as HEX2., but sites
Many now have more than 255 LCUs, so the variable was changed
Jan 11, 1995 from HEX2. to HEX4. in members TYPE8911,TYPE10,TYPE1415,
TYPE19,TYPE21,TYPE64,TYPE69,TYPE74,TYPE75,TYPE78,TYPE79.
Thanks to John Astle, National Australia Bank, AUSTRALIA.
Change 12.243 Support for ICEBERG's IXFP SRP Subsystem Performance SMF
VMACICE record PUT9404 changes the subtype 1 record (MXG dataset
Jan 11, 1995 ICEBRGSY) compatibly, adding variables FREBESCT/FREBESCP
(free collected back end space total/in prod partition).
Change 12.242 Support for DFSMSrmm records with DFSMS Release 1.2, and
TYPEEDGB new support for rmm's Control Backup file.
VMACEDGR To summarize MXG support for various rmm data sources:
VMACEDGS Member Infile Reads
Jan 11, 1995 TYPEEDGB LOGSMF Control Backup (EDGSKIP with BACKUP)
TYPEEDGR EDGHSKP Extract (EDGSKIP with RPTEXT)
TYPEEDGS SMF SMF Audit and Security (must update
member IMACEDGS for SMF record ID).
-VMACEDGR support for the DFSMSrmm Extract Record type S
causes INPUT STATEMENT EXCEEDED because the +38 Reserved
field following RSBINNO should have been +31. Also,
field RVSTSTAT does not exist, RVSTBIN and RVOBIN should
have been $EBCDIC6 instead of $EBCDIC8, and RVSTDATE
should have been $EBCDIC10 instead of $EBCDIC8.
This Extract Record is created by EDGHSKP with RPTEXT
option, but all of the dates are in character instead of
SAS dates, so this file may be less than useful.
-However, if EDGHSKP is run with the BACKUP option, that
file creates records that are almost like the SMF records
that are processed by VMACEDGS, except that there is no
SMF header, and there is no EDGS header. With minor
changes to VMACEDGS, new member TYPEEDGB will now read
the backup file (but note, you must use the //LOGSMF DD
to point to the backup file). This seems to be the best
data to use account for and analyze all your rmm tapes!
-The VMACEDGS Audit Record type D variables MDPDSN/MDNDSN
were always INPUT, but they may or may not exist; now the
INPUT is conditional. based on MDPDSNL/MDNDSNL.
Thanks to David Froberg, Software AG, USA.
Change 12.241 MVS/ESA Goal Mode type 72 subtype 3 does not measure the
VMAC7072 SYSTRNTM, the total system transaction time, from read in
Jan 10, 1995 to termination. Instead, variable AVGXETTM (Average
Execution Time), which is a subset of the AVGELPTM
(Average Elapsed time) duration is created. (SYSTRNTM
does exists in Compatibility Mode.)
Thanks to Don Deese, Computer Management Services, USA
===Changes thru 12.240 were included in MXG 12.06 dated Jan 09, 1995===
Change 12.240 Cosmetic changes (LABELs for unlabeled variables, names
Many in comments corrected, delete of temporary datasets that
Jan 8, 1995 should not have been kept, uncovered during QA runs) were
made to these 18 members:
ANALVMDY ASUMTALO INSTALL JCLINSTL JCLUXRE6 TESTIBM3
TYPEMON8 TYPETMON TYPE102A VMACRSPS VMACSIM VMACTIRS
VMACTLMS VMACVMON VMACXAM VMACZRB VMAC0 VMAC44
Change 12.239 Dan Kaberon has revised his analysis that merges the MVS
ADOCPATH TYPE73, TYPE74, and TYPE78CF data to analyze I/O path
ANALPATH statistics. An excellent documentation of the report is
ZNALPATH also provided by Dan in ADOCPATH, and (though unlikely to
Jan 8, 1995 ever be needed again), the original ANALPATH is ZNALPATH.
Thanks to Dan Kaberon, Hewitt Associates, USA.
Change 12.238 Almost cosmetic. There was no EXDB2STS exit member for
EXDB2STS dataset PDB.DB2STATS, but as there was also no statement
DIFFDB2 "%%INCLUDE SOURCLIB(EXDB2STS);" in DIFFDB2 (the OUTPUT
Jan 8, 1995 statement was implicit). Now there is an INCLUDE to
explicitly invoke the (newly created) exit member.
Change 12.237 MXG 12.04-12.05 only. Support for new subtype 5 Iceberg
EXICEDEL Deleted Data Space Release event (MXG dataset ICEBRGDE)
VMACICE was incorrectly output in dataset ICEBRGDR, and there was
Jan 8, 1995 no exit member EXICEDEL added to the Source Library,
because the "%%INCLUDE SOURCLIB(EXICEDRV);" following the
"MACRO _CICE05" definition in member VMACICE should be:
"%%INCLUDE SOURCLIB(EXICEDEL);/*_LICEDEL OUTPUTS ICEBRGDE*/
No one reported this error (which actually has minimal
impact since the subtype 5 is new and infrequent).
Instead, it was detected by a real fine addition to my QA
jobstream that was written by Freddie Arie. Using the
structure and naming conventions of MXG, Freddie reads
the MXG source library to look for exceptions and lack
symmetry between the IMACs, VMACs, and the exit members,
such as mismatched comments and datasets not output, and
it even verifies that any dataset name in a comment after
each OUTPUT statement is actually the dataset name that
is ultimately output! His powerful logic found my coding
error (I had block replicated code to add support for the
new subtype 5 record, but had failed to change the exit
name!).
Thanks to Freddie Arie, Lone Star Gas, TEXAS.
Change 12.236 DB2 report PMSQL01 may fail because QWHCTOKN was in the
ANALDB2R BY list for the report step, but was left out of the BY
Jan 8, 1995 list for the sort (and the failure is only apparent if
your data has non-blank QWHCTOKN!). Replace the line
NETSNAME QWHSLOCN BEGEVENT; with
NETSNAME QWHSTOKN QWHSLOCN BEGEVENT;
Change 12.235 Further cleanup of CICS reporting. Correct summarization
ANALCISH of "Storage Manager" CICSMD/CICSMT/CICSMDSA and "Journal"
Jan 5, 1995 CICJCR. "Last Reset time" (DSGLRT) was incorrect on the
report headers. Merged CICxxxxx datasets with CICDS, BY
statement changed to BY SYSTEM COLLTIME;, and VMXGSUM is
now used internally.
Dataset summarization status with this revision:
CICVT "VTAM STATISTICS"
Summarization value (times at RPL maximum) does
not match IBMs value, DETAIL values do match.
CICTCR "TERMINALS"
CICSMD-CICSMT-CICSMDSA "STORAGE MANAGER"
CICJCR "JOURNALS".
CICTCLR "TCLASS STATISTICS"
CICTM "TABLE MANAGER"
CICAUSS "AUTOINSTALLED TERMINALS"
CICAUTO "AUTOINSTALLED STATISTICS"
Summarization value (Times the peak was reached)
does not match IBMs value, DETAIL values do match.
CICDBUSS "DBCTL STATISTICS"
CICLDR "PROGRAMS"
Summarization value (Average fetch time) does not
match.
CICDS "DISPATCHER & TCB STATISTICS"
CICDTB "DYNAMIC TRANSACTION BACKOUT"
CICFCR "FILES DATA TABLE STATISTICS"
CICIRCB "BATCH GLOBAL STATISTICS"
CICLDG "LOADER STATISTICS"
Value in question: "programs loaded but not in use".
CICM "MONITORING STATISTICS"
CICDQG "TRANSIENT DATA GLOBAL"
CICDQR "TRANSIENT DATA RESOURCES"
CICLSRR "LSRPOOLs "
SHARED DATA BUFFERS O.K.
Had no index data or hiperspace data to verify values
CICLSRFR "LSRPOOL FILES"
CICST "STATISTICS DOMAIN STATISTICS"
CICTC "TASK ACCUMULATED SO FAR"
CICTSQ "TEMPORARY STORAGE"
CICCONSS "ISC/IRC ATTACH TIME STATISTICS"
average reuse time values do not match:
IBM Average reuse time tween entries: 00:00:08.3886
MXG Average reuse time tween entries: 0:00:00.296
and the MXG value was summed.
NEW CICS 4.1 REPORTS. None have been validated with 4.1
test data yet; this note will be updated when tested.
CICDLIG "DL/I GLOBAL"
CICFEPIC "FEPI CONNECTION"
CICFEPIP "FEPI POOL"
CICFEPIT "FEPI TARGET"
CICPAUTO "AUTOINSTALL PROGRAM"
CICPUSG "USER DOMAIN"
CICXMC "TRANSACTION MANAGER TCLASS"
CICXMG "TRANSACTION MANAGER GLOBAL"
CICXMR "TRANSACTION MANAGER TRANSACTIN"
Thanks to Mike Major, RSCA, USA.
Change 12.234 This is a documentation change only. No code was changed.
ASMTAPES The Tape Allocation Monitor portion of ASMTAPES still has
Jan 5, 1995 occasional incorrect allocation records (see below), but
ASMTAPES still is the replacement that should be used
in place of ASMTMNT, because the Tape Mount Monitor part
of ASMTAPES is better than ASMTMNT. Comments in ASMTMNT
explicitly tell you to use ASMTAPES instead of ASMTMNT!
Note that if you are running an old copy of ASMTMNT, and
if you suddenly find there are no tape mount records, it
probably means that your site installed the new HCD
architecture (which supports dynamic addition of new tape
devices without a SYSGEN). You will need to re-assemble
ASMTAPES and you will find your mount records will then
reappear. (Some sites assembled ASMTMNT four years ago,
before it was modified for the new HCD architecture!).
These problems are still not resolved in MXG 12.12:
-There are occasional, apparently specious, records with
PROGRAM='IEFIIC' or PROGRAM='STARTING', and typically
with a very short allocation duration that should be
deleted from your analysis. We are still investigating
why these incorrect program names and very short
allocation durations are created; statistically they seem
insignificant, but pragmatically we need to trap and
understand them. I though about deleting them for you,
but that runs against the grain, so I report them here
while the investigation is in progress. I suggest you
look at your data first, and then delete these
observations (and any with a duration less than ten
seconds, as these are insignificant events in the big
picture).
-Thanks to very fine research by Michael Enad of Dun &
Bradstreet, two additional problems in the Allocation
monitor are under development - we apparently miss two
types of deallocation events:
- When a tape volume is swapped from one drive to
another (either due to an error on the first device,
or due to operator command to swap the mount into or
out of a silo), we currently miss the deallocation of
the first device, and instead of writing two separate
allocation records, only one record is written when
the last device is freed, and that record still has
the device address of the first device, so if a
different job happens to allocate the first device
after the swap, that legitimate allocation record
appears to overlap the incorrect allocation record of
the job whose tape was swapped.
- When HSM allocates a device for Migration/Recall and
has multiple mounts, and then later the same day HSM
allocates that same device for Backup, two Allocation
records are written (both at end of the Backup), but
the deallocation time for the Migration/Recall event
has the end of Backup timestamp, causing these two
records to overlap.
Change 12.233 Continued enhancement of what will become VMXGSUM, but is
XMXGSUM currently in XMXGSUM for additional parallel testing.
Jan 5, 1995 Parsing now recognizes the syntax of all options on any
data statement. Output variables are created only if the
variable exists in the input data set (so you can now
drop variables from your DB2ACCT and still run ASUMDB2A
to summarize only your kept variables - previously, all
variables named in ASUMDB2A were created in the output,
even when they did not exist in your DB2ACCT dataset).
See discussion in the member.
Thanks to Chuck Hopf, Merrill Consultants, USA.
Change 12.232 Labels for FIXEDAV,CSLPFXAV,LPAFXAV,LSQAFXAV,PRVFXAV,
RMFINTRV SQAFXAV,FIXLOAV,PVTAFCAV now state '...*MAX OF AVERAGE'
Jan 5, 1995 instead of AVERAGE. In summarizing these measures of
real frames, taking the real average of all intervals
results with an un-representative number, because of the
slack intervals. By calculating the maximum value of
the averages for each interval, I think you get a much
more representative value, but I should have also made
it clearer in the label, hence this change.
Thanks to ???, ANHYP NV, BELGIUM.
Change 12.231 Label for variable SM012CPU is now 'CPU*TIME*USED' (it
VMACARB was 'CPU TIME USED*TIMER UNITS'), rather misleading. Any
Jan 5, 1995 MXG variable with a SAS time format has already been
converted from TIMER UNITS into seconds.
Thanks to W. F. Hamilton, Scottish Widows, SCOTLAND.
Change 12.230 Weekly and monthly building of PDBs did not include new
MONTHBLD DB2 dataset DB2STATB, which is now added to both members.
WEEKBLD Note that the DB2ACCT, DB2ACCTB, and DB2ACCTP datasets
Jan 5, 1995 are NOT built in the WEEK/MONTH PDB libraries by default
(because they can be quite large, are detail, and may not
be needed - if you want then in your WEEK/MONTH PDB you
can easily add them yourself in your WEEKBLD/MONTHBLD).
Change 12.229 TELEVIEW datasets contain zero observations because the
VMACTELE initial support was written without any data to test.
Jan 4, 1995 -The INPUT of SUBTYPE should have been &PIB.1. instead of
&PIB.2.
-Replace all occurrences of '?? &NUM.2' with ' &PK.1'
so the HH,MM,SS,and TH fields are correctly input.
-Insert ?? between DATE and &PD4. in seven places.
Thanks to Tom Parquette, MONY, USA.
Change 12.228 ICEBERG status variables CAENBCUR and DFWENCUR in dataset
VMACICE ICEBRGDV are incorrect. The two statements testing each
Dec 30, 1994 of these variables for ='00'x should test for ='01'x.
Thanks to Peter McGill, NRMA, AUSTRALIA.
Change 12.227 MXG 12.03-MXG 12.05 only. VMXGHSM still fails with
VMXGHSM "BCRTBLA HAS ALREADY BEEN DEFINED AS NUMERIC". The text
Dec 29, 1994 of Change 12.112 was correct, but in member VMXGHSM you
must delete the semicolon at the end of the line reading:
LENGTH DEFAULT=4;
Thanks to Solomon Baker, The Prudential Services Company, USA.
Change 12.226 Support for Innovation Processing's IAM user SMF record.
EXTYIAM New dataset TYPEIAM provides statistics on usage and the
IMACIAM efficiency of IAM execution. This implementation keeps
TYPEIAM only the first extent location, but if users need to keep
VMACIAM all extents I will revise the MXG implementation.
Dec 16, 1994
Jan 5, 1994
Thanks to David Ehresman, University of Louisville, USA.
Change 12.225 Support for NETSPY 4.5.
EXNSPYNB -If you have LU 6.2 devices, the NSPYAPPL dataset was
FORMATS incompatibly changed because LU 6.2 devices statistics
IMACNSPY are now captured separately in these 27 new LU 6.2
VMACNSPY variables:
Dec 15, 1994 AINPUTS6 AOUTSZT6 AOUTSZW6 ARSPHOS6 ARSPNET6 ATTCHLU6
CINPUTS6 COTPUTS6 CRSPHOS6 CRSPNET6 NETRSPN6 OUTPUTN6
OVRSPPC6 SESSNO6 TOTRSPN6 TRANSNO6 T1RSPNO6 T1RSPPC6
T2RSPNO6 T2RSPPC6 T3RSPNO6 T3RSPPC6 T4RSPNO6 T4RSPPC6
USERRSP6 WRSPHOS6 WRSPNET6
and the 27 existing similarly-named (but without the "6")
variables will now contain only the statistics for your
non-LU 6.2 devices (previously they contained both).
Note that if you need statistics for totals, you will
need to decompose the ratios, sum the numerator and the
denominator separately, and then recalculate the ratio.
(VMXGSUM handles these "normalized" variables easily!).
-New dataset NSPYNCPB contains 27 variables from the new
NCP Control Block Information record, and new MXG format
MGNSPCB was created for that data.
-For all NETSPY versions, variable NSPCURVS was input as
PIB4 and thus wrong. It is now input as PIB2 and new
variable NSPCURVT='VC-S*ESTABLISHED*THIS SESSION' is
created PIB2 after NSPCURVS.
Thanks to Tim Crocker, Computer Power, USA.
Thanks to Alan Phelan, Allied Irish Bank Group, IRELAND.
Change 12.224 VM/ESA 2.2 Scheduler records cause PROBABLE DATA LOSS
VMACVMXA error message. The second occurrence of SKIP=SKIP-148;
Dec 15, 1994 should be SKIP=SKIP-100; (this is the one 67 lines after
IF MRHDRDM=2 AND MRHDRRC=5 THEN DO; /*VXSCLDDL*/
With this change, MXG tolerates VM/ESA 2.2 data records,
but there are additional fields added by IBM (1.7,1.15,
2.4,2.5,2.6,4.9,4.10) that are not yet decoded. This
text will be revised when documentation has been received
and MXG fully supports VM/ESA 2.2 records.
Thank