COPYRIGHT (C) 1984-2023 MERRILL CONSULTANTS DALLAS TEXAS USA
MXG CHANGES 13.13
=========================member=CHANGE13================================
/* COPYRIGHT (C) 1984-1996 MERRILL CONSULTANTS DALLAS TEXAS USA */
This is MXG Version 13.13, dated Jan 20, 1996, thru Change 13.332.
MXG Version 13.13 is dated Jan 20, 1996, thru Change 13.332
Newsletter TWENTY-NINE, dtd Jan 20, 1995, thru Change 13.323
MXG Version 13.09 was dated Jan 10, 1996, thru Change 13.313
MXG Version 13.08 was dated Dec 15, 1995, thru Change 13.290
MXG Version 13.07 was dated Oct 30, 1995, thru Change 13.253
MXG Version 13.06 was dated Oct 10, 1995, thru Change 13.225
MXG Version 13.05 was dated Aug 21, 1995, thru Change 13.172
Early MXG Version 13.05 was dated Aug 11, 1995, thru Change 13.162
Newsletter TWENTY-EIGHT, dtd Aug 21, 1995, thru Change 13.162
MXG Version 13.04 was dated Jul 31, 1995, thru Change 13.149
MXG Version 13.03 was dated Jul 19, 1995, thru Change 13.120
MXG Version 13.02B was dated Jul 6, 1995, thru Change 13.111
MXG Version 13.02A was dated Jun 28, 1995, thru Change 13.101
Initl MXG Version 13.02 was dated Jun 19, 1995, thru Change 13.095
Real MXG Version 13.01 was dated May 3, 1995, thru Change 13.055
PreRe MXG Version 13.01 was dated Apr 26, 1995, thru Change 13.046
Early MXG Version 13.01 was dated Apr 1, 1995, thru Change 13.011
MXG Version 12.12A was 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
Contents of member CHANGES:
I. MXG Software Version Status.
II. MXG Technical Notes
III. MVS Technical Notes
IV. DB2 Technical Notes
V. IMS Technical Notes
VI. SAS Technical Notes
VII. CICS Technical Notes
VIII. Incompatibilities and Installation of MXG 13.13.
IX. Online Documentation of MXG Software.
X. Changes Log
I. MXG Software Version Status.
1. MXG Software Version 13.13, dated January 20, 1996, was shipped
with newsletter, NEWSLETTER TWENTY-NINE.
Major enhancements added in MXG 13.13 dated Jan 20, 1996:
Added after Newsletter 29 was sent to the printer:
Support for 4-digit UCBs in DCOLLECT, ASMVTOC and ASMVVDS.
Support for DOS/VSE POWER 5.2 Accounting Records
Support for MVS Catalog records (Exported with IDCAMS)
Included in Newsletter 29 list of enhancements in MXG 13.13:
Support for BETA 93 Release 1.06.50 (INCOMPATIBLE)
MXGVERSN variable added to TYPE70 and RMFINTRV.
Support for Frye Systems measurement of Netware LANS
Support for Blue Line Software 4.03 and 4.04 (INCOMPAT) and 4.10.
Sample conversion of DBaseIII files into SAS datasets.
Workaround for SAP and IBM CICS 2.1 interleaved records.
ASCII execution of BUILDPDB and PROC FORMATS now transparent.
TESTMWX for improved CPU capture in User records.
Major enhancements added in MXG 13.09 dated Jan 10, 1996:
Support for DFSMS/MVS 1.3 DCOLLECT records (compatible).
Support for DFSMS/MVS 1.3 VSAM RLS fields in type 64 (compatible).
Support for DFSMS/MVS 1.3 VSAM RLS fields in type 42 (compatible).
Support for MVS/ESA 5.2.2 Open Edition OMVS type 92 (INCOMPATIBLE).
Support for MVS/ESA 5.2.2 Open Edition OMVS type 30 (compatible).
Sample HSM reports and analysis suggestions
TYPE6 INPUT STATEMENT EXCEEDED for PSF type 6 with OW10067.
CICS/ESA 4.1 corrections (TRANTYPE, ELAPSTM, ENDTIME, IRESPTM)
CICS/ESA 3.3 UNEXPECTED STATISTICS with STILEN=0 protection.
MEASUREWARE (old HP-PCS) CPU time error in HPxxGLOB,HPxxAPPL.
Landmark TMON for UNIX enhancements, corrections and errors.
Major enhancements added in MXG 13.08 dated Dec 15, 1995:
Support for MVS Solution's MVS Thruput Manager SMF record.
Support for VM/ESA SQL/DS Remote User Accounting Record (INCOMPAT)
Support for Landmark's TMON for UNIX.
Support for TANDEM D20 and D30 and D40 releases.
Support for DB2 4.1 IFCIDs 221, 222, and 231.
Support for IDMS 12.01 (INCOMPATIBLE) was not correct until 13.08.
Support for TOPSECRET 4.4 and 5.0 (INCOMPATIBLE) added.
Support for HSM ABARS ABACKUP/ARECOVER FSR segment validated.
Support for SAP 5.0 INCOMPATIBLE changes to type 110 journal data.
MAINTLEV 7 of MXG Tape Mount and Allocation Monitor.
Replacement for CICINTRV available for testing.
"XMXGSUM" architecture now replaces VMXGSUM.
SYSNAME and SYSPLEX added to PDB.JOBS/STEPS/PRINT.
Default ASUMCICS summarization now includes USER.
JESNR may show only four digits in TYPE26; IBM lied in ESA 5.2
DEVPLX (duplex volume) address wrong, IBM worrying.
Major enhancements added in MXG 13.07 dated Oct 30, 1995:
Support for DB2 4.1.0 type 100 and 101 SMF records.
Support for STK SILO HSC VIEW Command Subtype 8 SMF record.
Support for MODEL204 Release 3.0
CICS/ESA 4.1 CICSTRAN variables STRTTIME/ENDTIME now GMT-corrected.
New IMACSPCK exit for SPIN decision override.
New IMACZDAT localizes creation of ZDATE, for ease in reruns.
Corrections for Landmark Version 2 TMDB support.
Major enhancements added in MXG 13.06 dated Oct 10, 1995:
ASMTAPES revision MAINTLEV 6 is now included, resolves errors.
TYPETMON (TMON CICS 1.3) must now use RECFM=VB instead of RECFM=U.
Support for Landmark TMON for DB2 Version 2.
Support for Tandem D20 MEASURE CPU, Disk, and Process data records.
Support for COM-PLETE Version 4.6 SMF record.
Support for ISOGON Soft Audit Version 4.1.
Support for HSM ABARS ABACKUP/ARECOVER FSR segment.
Support for APAR OW14717 and APAR OW16039 for SMF type 42.
Support for Omegamon for MVS/ESA V400 adds variables.
Support for 3590 tape drives now complete.
Support for APAR OW11142 adds new fields to TYPE64.
Support for Software Engineering of America's TRMS SMF record.
MXG 13.01-MXG 13.05, IMACJBCK caused deletion of RACF, ACF2 and DB2
observations with job name of nulls. See Change 13.183.
ANALDB2R may still get FORMAT NOT FOUND, assorted minor DB2 fixes.
Major enhancements added in MXG 13.05 dated Aug 21, 1995:
Added after Newsletter TWENTY-EIGHT was printed:
Support for MVS/ESA 5.2.2.
Support for Candle Omegamon 300 SMF record (incompatible).
Support for Landmark's TMON/MVS 1.2/1.3 additional subtypes.
Preliminary support for 3590 tape drives.
Correction for VM/ESA INVALID CONTROL RECORD error.
Announced in Newsletter TWENTY-EIGHT:
Support for the year 2000 (see MXG Technical note in NEWSLTRS, NL28)
Support for OpenMVS File System I/O type 92 SMF record.
Support for MVS/ESA 5.2 System Logger Data type 88 SMF record
Support for EREP (SYS1.LOGREC) records.
Deaccumulation of HMF records.
Final (?) Correction to ANALDB2R Statistics and Audit Reports.
If you use either the DB2 Statistics reports or DB2 Audit Reports,
you must request MXG 13.05 for the ANALDB2R corrections to errors
introduced in MXG 12.12 (Statistics) or MXG 13.01 (Audit) that were
not fixed until now (I apologize for the careless coding and lack
of validation of report output that took seven iterations to fix).
The Audit errors were actually corrected in 13.03, but Statistics
still had four values that were not corrected until MXG 13.05.
The more-commonly-used DB2 Accounting Reports had no errors.
MAINTLEV 6 of ASMTAPES was listed in Newsletter 28, but is not on
the MXG 13.05 tape; see text of Change 13.163.
Major enhancements added in MXG 13.04 dated Jul 31, 1995:
Support for NetCompress SMF records.
Support for Packet/Main SMF records.
Support for Kodak AXCIS Optical Disk SMF records.
Major enhancements added in MXG 13.03 dated Jul 19, 1995:
More fixes for DB2 Statistics Reports, a fix for DB2 Audit Reports.
TYPE116 (MQM) validation and correction.
Major enhancements added in MXG 13.02B dated Jul 6, 1995:
Correction to DB2 Statistics Summary and Audit Reports
MXG Position Paper on Support for Year2000 in member YEAR2000.
Major enhancements added in MXG 13.02A dated Jun 28, 1995:
Correction to DB2 PMSSTA01/02 Statistics Summary Reports.
Final (?) revisions to XMXGSUM.
Major enhancements added in MXG 13.02 dated Jun 19, 1995:
Support for MVS/ESA 5.2 (compatible) changes 24, 30, and 42 records.
Support for OPC Release 3.0 (INCOMPATIBLE).
Support for DFSORT Release 13.0 (INCOMPATIBLE).
Support for TMS (CA-1) Release 5.1 (compatible).
Support for Antares' HURON ObjectStar SMF record.
Support for TYPE32 APARS OW10393 (causes error) and OW12856 (none).
Support for SAP Release 5.0 CICS accounting in type 110.
Support for ACS Wylbur Accounting SMF record
Support for Sterling SAMS Storage Automation SMF record.
Support for LEGENT's AUTOMATE SMF record.
DB2 Audit SQL text corrections.
Support for APAR OW08641 for NPM Version 2.2
Major enhancements added in MXG 13.01 dated May 3, 1995:
Support for NETSPY Release 4.6 (compatible), divide by zero fixes.
Support for HP PCS current version on HPUX, AIX, and SUN unix.
Support for OS/400 Version 3.1.0 (was wrong in MXG 12.12/12.12A).
Support for TCP/IP APAR PN69321-PN69322.
Support for Sterling SOLVE NCL CPU-time accounting user SMF.
Support for HMF SMF record subtypes 4 and 5.
Support for APAR OW04653 added variables to TYPE74ST dataset.
Support for IBM's IRRDBU00 RACF Database Unload.
ASMRMFV 0C4 correction and enhancements for RMF VSAM processing.
ANALCNCR enhancements and validation.
XMXGSUM enhancements and validation.
TYPE116 (MQM) validation and correction.
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).
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 - compatibility Jun 24, 1994 12.02
MVS/ESA 5.1.0 - Goal Mode May 3, 1995 13.01
MVS/ESA 5.2.0 Jun 15, 1995 13.05
MVS/ESA 5.2.2 Oct 19, 1995 13.09
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. 13.09
CICS/ESA 4.2 when G.A. ??.??
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. 13.02A
DB2 4.1.0 Nov 7, 1995 13.07
DFSMS/MVS 1.1 Mar 13, 1993. 11.11
DFSMS/MVS 1.2 Jun 24, 1994. 12.02
DFSMS/MVS 1.3 Dec 29, 1995. 13.09
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 Nov 22, 1994. 12.06
Table MXG support for non-IBM products:
Availability MXG Version
Product Name Date Required
Landmark
The Monitor for DB2 Version 2 13.06
The Monitor for CICS/ESA 1.2 - 12.12
The Monitor for CICS/ESA 1.3 - 12.12A
The Monitor for MVS/ESA 1.3 - 12.05
Candle
Omegamon for CICS V300 User SMF 12.05
Omegamon for CICS V400 User SMF 13.06
Omegamon for IMS V110 (ITRF) 12.12
Omegamon for MVS - last MXG change 1992 12.12
Omegamon for DB2 Version 2.1/2.2 13.05
Omegamon for VTAM V160 12.04A
Omegamon for SMS V100/V110 12.03
Boole & Babbage
IMF 3.1 (for IMS 5.1) 12.12
Memorex/Telex
LMS 3.1 12.12A
II. MXG Technical Notes.
III. MVS Technical Notes after Newsletter TWENTY-NINE.
IV. DB2 Technical Notes.
V. IMS Technical Notes.
VI. SAS Technical Notes.
VII. CICS Technical Notes.
VIII. Incompatibilities and Installation of MXG 13.13.
1. Incompatibilities introduced in MXG 13.13 (since MXG 12.12):
a- IMACs that were changed (if they exist in your USERID.SOURCLIB, you
must refit your tailoring, starting with the new IMAC member):
IMACPDB (Change 13.198)
IMACJBCK (Change 13.183)
b- Other incompatibility changes:
Member FORMATS cannot be executed as-is under SAS Version 5.18,
but can be tailored if you are still running that archaic version.
See Change 13.127
User-written invocations of VMXGSUM with OUTCODE= to recalculate
the DATETIME= variable may be wrong. See Change 13.152.
c- These products were incompatibly changed by their vendor, and they
require MXG 13.xx as indicated:
Memorex/Telex LMS 3.1 (Change 12.326, MXG 12.12A)
OPC Release 3.0 (Change 13.092, MXG 13.02)
DFSORT Release 13 (Change 13.092, MXG 13.02)
Hipercache 4.1.x (Change 13.120, MXG 13.03)
BETA 93 Release 1.06.50 (Change 13.304, MXG 13.09)
OMEGAMON/MVS Version 300 (Change 13.170, MXG 13.05)
IDMS 12.01 Maint 9506 (Change 13.223, MXG 13.06)
TMON/CICS 1.3 (Change 13.204, MXG 13.06)
SAP 5.0 type 110 journal (Change 13.261, MXG 13.08)
TOPSECRET 4.4/5.0 (Change 13.254, MXG 13.08)
OPEN EDITION MVS 5.2.2 (Change 13.313, MXG 13.13)
VM/ESA SQL/DS Accounting (Change 13.xxx, MXG 13.yy)
IMS 5.1 (Change 13.265, MXG 13.xx)
Model204 Release 3.0 (Change 13.249, MXG 13.xx)
TMON/DB2 Version 2 (Change 13.224, MXG 13.xx)
TYPE42 APAR OW14717 (Change 13.217, MXG 13.xx)
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 105-cyl PDS: MXG.V1313.MXG.SOURCLIB, and use IEBUPDTE
to read the MXG tape to create the 2937+ member Source Library.
c. Allocate a 1-cyl PDS: MXG.V1313.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 V1313.USERID.SOURCLIB.
d. Allocate a 1-cyl SAS Data Library: MXG.V1313.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.V1313.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.V1313.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.V1313.USERID.SOURCLIB, then you must reinstall your site's
tailoring for that IMAC, starting with the IMAC member from the
MXG 13.13 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 13.13 in its own set of libraries. When
parallel testing is complete and are ready to implement MXG 13.13
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.V1313.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.
Since 1994, 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 than 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 12.12:
Dataset/
Member Change Description
Many 13.190 Format of UOWTIME changed to DATETIME25.6 everywhere.
Many 13.198 Support for 3590 tape drives.
ADOCFRYE 13.317 Sample conversion of DBaseIII files into SAS datasets
ANALALL 13.076 Print of All SMF records from a job was enhanced.
ANALAPAF 13.014 Semicolon missing in report program.
ANALCISH 13.046 Report enhancements for CICS Shutdown reports.
ANALCISH 13.113 CICS Shutdown may cause NOTSORTED error.
ANALCISH 13.274 Lots of page ejects corrected.
ANALCNCR 13.036 Validation closed several exposures.
ANALCNCR 13.047 ANALCNCR failed when invoked by ANALTAPE or ANALMTP.
ANALCNCR 13.280 Correction of Dataset Not Found condition.
ANALDB2C 12.318 NO MATCHING IF error because colon vice semicolon.
ANALDB2R 12.328 Syntax errors with PMACC01 or PMACC02 report.
ANALDB2R 13.042 DBID/OBID mapping enhanced to include timestamp.
ANALDB2R 13.058 BY VARIABLE STRTTIME IS NOT ON INPUT DATA error.
ANALDB2R 13.079 DB2 Statistics Summary PMSTA01, Audit report fixes.
ANALDB2R 13.106 Statistics Report correction, FORMAT NOT FOUND.
ANALDB2R 13.118 Final (?) corrections to Statistics and Audit Reports
ANALDB2R 13.159 More Statistics Report errors, but at field level.
ANALDB2R 13.191 $DB2DBID FORMAT NOT FOUND may still occur in 13.05.
ANALDB2R 13.278 Enhancements only! No errors reported!
ANALHSM 13.307 Analysis of HSM SMF record HSMFSRST data.
ANALPATH 12.325 Cross-System DASD Reports cols ran together.
ANALPATH 13.207 INVALID ARGUMENT error in report program.
ANALPGNS 13.003 Failed if you changed RMFINTRV duration in IMACRMFI.
ANALRMFR 13.134 Data/time selection crossing midnight failed.
ANALTALO 12.327 VARIABLE NOT FOUND error.
ANALTALO 13.006 Variable SYSTEM NOT FOUND in MXG 12.12A.
ANALTAPE 13.037 All-systems report was missing.
ANALTAPE 13.286 ERROR:KEYWORD PARAMETER in MXG 13.06-13.07 only.
ASMIMSLG 13.265 IMS 5.1 changes, untested.
ASMRMFV 13.027 0C4 ABEND if no enqueue table, additional records.
ASMTAPES 13.135 MAINTLEV 4 of MXG Tape Mount and Allocation Monitor
ASMTAPES 13.163 MAINTLEV 5 of MXG Tape Mount and Allocation Monitor
ASMTAPES 13.187 MAINTLEV 6 of MXG Tape Mount and Allocation Monitor
ASMTAPES 13.282 MAINTLEV 7 of MXG Tape Mount and Allocation Monitor.
ASMVTOC 13.331 Support for 4-digit UCBs.
ASMVVDS 13.330 Support for 4-digit UCBs.
ASUMCICS 13.268 Default summarization now includes USER.
BUILDPDB 13.320 CODEPASS=2 now set only for MVS execution.
CICINTRZ 13.281 Replacement for CICINTRV available for testing.
DIFFDB2 13.212 Removed DB2STAT2 from DIFFDB2 create of DB2STATS.
DIFFDB2 13.269 Variables QBSTHPL/QBSTVPL removed from DIF().
FORMATS 13.061 All MXG formats for hex values use OTHER= syntax.
FORMATS 13.127 MXG FORMATS member incompatible with SAS Version 5.
FORMATS 13.319 OTHER= syntax now works under MVS or ASCII.
GRAFLPAR 13.060 MXG 13.01 only. NAME uninitialized error.
IMACFILE 13.109 Select CICS records by APPLID/SUBTYPE example.
IMACICSA 12.324 SAP Journal data times formatted correctly.
IMACICSA 13.077 CICS SAP variable STCTIMTR may be wrong.
IMACICSA 13.199 SAP variable STICODE changed from Numeric to Char.
IMACPDB 13.271 SYSNAME and SYSPLEX added to PDB.JOBS/STEPS/PRINT.
IMACSPCK 13.241 New BUILDPDB/BUILDPD3 exit for SPIN override.
IMACZDAT 13.237 ZDATE creation now localized, for ease in reruns.
JCLDAYDS 12.316 DCOLLECT output LRECL=644 instead of LRECL=264.
JCLPDB6 13.018 Member ASUMDB2S does not exist error.
MONTHBLD 13.015 SORT error building monthly TYPE72, wrong BY list.
REXXDB2 13.284 REXX program to convert DB2 GTF records corrected.
RMFINTRV 13.213 TSOxxxxx response variables FORMAT now 7.3.
SASAFIX1 13.239 S370FRBn informat replacement .DLL for ASCII SAS.
TRNDDB2S 13.031 Variables QTPUBD and QTXAIRL incorrect spellings.
TRNDTALO 12.327 Syntax error due to missing comma.
TYPEACF2 13.112 ACF2 subtype "L" logic (ACF2JR dataset) redesigned.
TYPEACHE 13.005 CRR 1.6 with 3990-6 in Basic Move, values wrong.
TYPEAUTO 13.091 Support for LEGENT's AUTOMATE SMF record.
TYPEAUTO 13.102 Corrections to initial support for AUTOMATE.
TYPEAXC 13.149 Support for Kodak AXCIS Optical Disk SMF records.
TYPEBETA 13.322 Support for BETA 93 Release 1.06.50 INCOMPATIBLE.
TYPECACH 13.103 Support for 4-digit UCB in Cache RMF Reporter data.
TYPECACH 13.262 DEVPLX (duplex volume) address wrong, IBM worrying.
TYPECOMP 13.222 Support for COM-PLETE Version 4.6 SMF record.
TYPECTLG 13.325 Support for MVS Catalog Records exported by IDCAMS.
TYPEDB2 13.212 Dataset DB2STAT2 was incomplete.
TYPEDB2 13.244 Support for DB2 4.1.0 type 100 and 101 records.
TYPEDCOL 13.105 INPUT STATEMENT EXCEEDED with SMS 1.2 DCOLLECT.
TYPEDCOL 13.295 Support for DFSMS/MVS 1.3 DCOLLECT records (COMPAT).
TYPEDCOL 13.332 Support for 4-digit UCBs.
TYPEDOS 13.328 Support for DOS/VSE POWER 5.2 Accounting Records.
TYPEEDGS 13.124 IBM RMM SMF record INVALID DATA FOR MDUCDATE.
TYPEEPMV 13.170 Support for OMEGAMON/MVS Version 300 (INCOMPAT).
TYPEEPMV 13.201 Support for Omegamon for MVS/ESA V400 adds variables.
TYPEEREP 13.164 Support for EREP/SYS1.LOGREC records.
TYPEEREP 13.208 EREP gets INVALID DATA FOR DTL, additional support.
TYPEEREP 13.270 INPUT STATEMENT EXCEEDED error corrected.
TYPEFRYE 13.317 Support for Frye Systems LAN measures for Netware.
TYPEHIPR 13.120 Support for Boole & Babbage HiperCache V1.4.3.
TYPEHMF 13.038 Support for HMF subtypes 4 and 5.
TYPEHMF 13.165 Deaccumulation of HMF records.
TYPEHPAI 13.010 Support for HP-PCS data from AI UNIX.
TYPEHPSU 13.010 Support for HP-PCS data from SUN UNIX.
TYPEHPUX 13.010 Support for HP-PCS data from HPUX UNIX.
TYPEHSM 13.131 Corrections to HSM FSR segment in SMF record.
TYPEHSM 13.218 Support for HSM ABARS ABACKUP/ARECOVER FSR segment.
TYPEHSM 13.259 HSM ABARS record now validated.
TYPEHURN 13.085 Support for Antares' HURON ObjectStar SMF record.
TYPEHURN 13.243 Zero obs in HURN49 dataset.
TYPEICE 13.026 ICEBERG subtype 5 extents and TOIOTIME wrong.
TYPEIDMS 13.223 Support for IDMS 12.01 Maint 9506 (INCOMPATIBLE).
TYPEIDMS 13.267 Support for IDMS 12.01 INVALID DATA FOR PMHSDATE.
TYPEILKA 13.130 Internet addresses were not converted to num-point.
TYPEIMSA 13.013 IMS DEDB and MSDB counts from fastpath type 59.
TYPELMS 12.326 Support for Memorex/Telex LMS Version 3.1 (INCOMPAT).
TYPEMON8 12.315 NO MATCHING DO/SELECT error, 'TD' record support.
TYPENAF 13.094 NAFLOGOF dataset variables incorrect.
TYPENAF 13.133 Candle's Supersession Release 147 PTF QLV1372
TYPENDM 13.070 Variable NDMDSDSN (Source DSN) added to NDMCT.
TYPENDM 13.146 Connect Direct (formerly NDM) minor corrections.
TYPENSPY 13.021 NETSPY Type N subtype 06/07 support incorrect.
TYPENSPY 13.022 Support for NETSPY Release 4.6 (compatible).
TYPENSPY 13.059 INPUT STATEMENT EXCEEDED for NETSPY type X record.
TYPENTCP 13.144 Support for NetCompress SMF records.
TYPEOMCI 13.173 INPUT STATEMENT EXCEEDED RECORD Subtype 200.4.
TYPEOPC 13.092 Support for OPC Release 3.0 (INCOMPATIBLE).
TYPEPKMN 13.145 Support for Packet/Main SMF records.
TYPEQAPM 13.051 Support for OS/400 Version 3.1.0 wrong in MXG 12.12.
TYPEQAPM 13.071 OS/400 Version 3.1, DSARM/DSTYPE reversed.
TYPERACF 13.030 Support for IBM's IRRDBU00 RACF Database Unload.
TYPERMDS 13.260 INVALID ARGUMENT TO MDY in RMDS 1.4 records.
TYPESAMS 13.080 Support for Sterling SAMS Storage Automation SMF.
TYPESAVR 13.252 New fields added, ZAP required to populate.
TYPESFTA 13.219 Support for ISOGON Soft Audit Version 4.1.
TYPESOLV 13.028 Support for Sterling SOLVE NCL CPU-time accounting.
TYPETAND 13.221 Support for TANDEM D20 MEASURE CPU, DISK and PROCESS.
TYPETAND 13.283 Support for TANDEM D20 D30 and D40 releases.
TYPETCP 13.008 Support for TCP/IP APAR PN69321-PN69322.
TYPETMDB 13.223 Support for Landmark TMON for DB2 Version 2.
TYPETMNT 13.135 PROGRAM=IEFIIC records are again deleted by TYPETMNT.
TYPETMON 12.320 Landmark Version 1.3 variables were not INPUT.
TYPETMON 13.204 TYPETMON (TMON CICS 1.3) INCOMPATIBLY CHANGED BY MXG.
TYPETMS5 13.083 Support for TMS (CA-1) Release 5.1 (compatible).
TYPETMS5 13.123 New variables from 5.1 added to final datasets.
TYPETMS5 13.308 BUFNO=220 on //TMC DD reduces 15 minute run to 4!
TYPETMVS 13.170 Support for new TMON/MVS subtypes.
TYPETSOM 13.143 TSO/MON 6.1 only, TRIVTM,NTRIVTM,LONGTM too small.
TYPETUX 13.288 Support for Landmark TMON for UNIX.
TYPETUX 13.302 Corrections and Enhancements for Landmark TMON/UNIX.
TYPEVM 13.287 Support for VM/ESA SQL/DS Remote User Account Record.
TYPEVMXA 13.126 Sterling's VM/Monitor MONWRITE records cause error.
TYPEVMXA 13.137 Support for MICS VM Data Transmission Program output.
TYPEVMXA 13.168 Correction to Change 13.126, applies to IBM too.
TYPEVMXA 13.318 Alternative VXBYUSER using VXUSELOF vice VXUSEINT.
TYPEWYLA 13.075 Support for ACS Wylbur Accounting SMF record.
TYPE102 13.009 T102S145 QWn145OB values wrong.
TYPE102 13.192 IFCID 21 or 44 INVALID SECOND ARGUMENT error message.
TYPE110 12.321 CICS Statistics CICDS and CICEODRV datasets wrong.
TYPE110 13.057 CICSLSRR variables A08BKCTD/A08BKDTD incorrect.
TYPE110 13.261 Support for SAP 5.0 INCOMPATIBLE type 110 journal.
TYPE110 13.291 CICSTRAN (MXG 13.07-13.08 only) ENDTIME/ELAPSTM bad.
TYPE110 13.292 CICS/ESA 3.3 UNEXPECTED STATISTICS with STILEN=0.
TYPE110 13.296 CICS/ESA 4.1 TRANTYPE was moved by IBM, now correct.
TYPE116 13.049 Zero observations in dataset TYPE116.
TYPE1415 13.002 DSNAME='UNKNOWN...' set incorrectly for multi-vol.
TYPE1415 13.064 Multi-UCB type 1415 SMS fields wrong.
TYPE16 13.093 Support for DFSORT Release 13 (INCOMPATIBLE).
TYPE24 13.066 Fields added by MVS/ESA 5.2
TYPE26J2 13.263 JESNR may show only four digits; IBM lied in ESA 5.2
TYPE28 13.072 Support for NPM Version 2.2 APAR OW08641.
TYPE30 13.065 Negative value for EXECTM due to IBM leapseconds.
TYPE30 13.066 Fields added by MVS/ESA 5.2
TYPE30 13.073 ABEND value may be wrong in TYPE30_5.
TYPE32 13.084 Support for APARs OW10393 and OW12856.
TYPE42 13.066 Fields added by MVS/ESA 5.2
TYPE42 13.217 Support for APAR OW14717 and OW16039 SMF type 42.
TYPE42 13.311 Support for DFSMS/MVS 1.3 VSAM RLS new subtypes.
TYPE50 13.188 Variable WRBUFUSE added to dataset TYPE50.
TYPE6 13.056 4-Digit remote support incomplete.
TYPE6 13.309 INPUT STATEMENT EXCEEDED for PSF type 6 with BINS.
TYPE64 13.312 Support for DFSMS/MVS 1.3 VSAM RLS new variables.
TYPE72GO 13.236 Delay percentages calculation was incorrect.
TYPE74 13.004 MVS/ESAs 5.1 TYPE74ST dataset had duplicate/missing.
TYPE74 13.035 Support for APAR OW04653 added to TYPE74ST dataset.
TYPE80A 12.323 Invalid SUBSTR function, STOPOVER error corrected.
TYPE80A 13.254 Support for TOPSECRET 4.4/5.0 (INCOMPATIBLE) records.
TYPE91 13.189 INVALID DATA FOR AFSTTIME in SMF type 91 fixed.
TYPE92 13.155 Support for OpenMVS File System I/O SMF type 92.
TYPE92 13.313 Support for MVS/ESA 5.2.2 Open Edition INCOMPATIBLE.
VMACEXC2 13.329 Supression of excess INVALID DEVICE messages
VMAC102 13.273 Support for DB2 4.1 IFCIDs 221, 222, and 231.
VMAC110S 13.323 CICS 2.1 and SAP journal segments intermixed fix.
VMXGDUR 13.305 Rename internal variables DATE HOUR DAY DAYM etc.
VMXGHSM 13.108 Dataset DGN corrected for multiple dump copies.
VMXGINIT 13.033 New macro variable, &MXGDEBUG is now GLOBALed.
VMXGSUM 13.152 VMXGSUM incompatible for user-written invocations.
VMXGSUM 13.276 "XMXGSUM" architecture now replaces VMXGSUM.
XMXGSUM 13.097 Final validation enhancements.
YEAR2000 13.110 MXG Position Paper on support for the Year2000.
YEAR2000 13.158 Phase one support for the Year2000.
Inverse chronological list of all Changes:
NEXTCHANGE: Version 13
==========MXG 13.13 dated Jan 20, 1996, thru Change 13.332============
Change 13.332 Support for 4-digit UCB's in DCOLLECT required only that
VMACDCOL the format for variable DCVDVNUM be changed from HEX3 to
Jan 19, 1996 HEX4.
Thanks to Astrid Fridtun, Statens datasentral, NORWAY.
Change 13.331 Although DCOLLECT should be used instead of this old MXG
ASMVTOC Assembly routine, the program has been enhanced to handle
VMXGVTOC 4-digit UCB addresses, and VMXGVTOC has been modified to
Jan 18, 1996 look for the 4-digit address at the end of the record
created by ASMVTOC.
Thanks to Astrid Fridtun, Statens datasentral, NORWAY.
Change 13.330 Although DCOLLECT should be used instead of this old MXG
ASMVVDS Assembly routine, the program has been enhanced to handle
Jan 18, 1996 4-digit UCB addresses. The TYPEVVDS program was already
written to support 4-digit addresses, so it was okay!
Thanks to Astrid Fridtun, Statens datasentral, NORWAY.
Change 13.329 ERROR VMACEXC2.2 INVALID DEVICE DATA is printed for each
VMACEXC2 DD segment with non-zero EXCPCNT that has DEVCLASS=00,
Jan 18, 1996 DEVTYPE=00, and DEVNR=00, because MXG does not know what
to do with EXCPCNT in a DD segment which has no device!
However, the message is printed for EACH DD, filling the
SAS log with these messages from an MVS 3.1.3 system. No
other site has encountered the problem, and the site is
investigating to determine what is unique there, but to
prevent filling the log, the PUT statement is now limited
to the first ten occurrences. The existing EXC2ERR1=1;
statement was changed to EXC2ERR1+1; to make it a counter
and a new line inserted between that statement and the
PUT statement reading IF EXC2ERR1 LE 10 THEN so that
the message is supressed after ten occurrences.
Thanks to Warick Smith, Sun Alliance & Royal Insurance, AUSTRALIA.
Change 13.328 Support for DOS/VSE POWER 5.2 Accounting Records. IBM
IMACDOS again changed the records INCOMPATIBLY, so you must EDIT
TYPEDOS member IMACDOS to specify OFFSET=0 and INPUT @43 RECID.
Jan 17, 1996 to process POWER 5.2 records.
-Additionally, the choice between "American" MMDDYY dates
and "European" DDMMYY dates was externalized into member
IMACDOS (previously, you had to actually change the code
in member TYPEDOS for European formats.). If you have a
member IMACDOS in your USERID.SOURCLIB, you must replace
your existing IMACDOS with IMACDOS from MXG 13.13, or
you will get a VARIABLE _MMDDYY IS UNINITIALIZED message.
Fortunately, even with that message, if your dates are in
American format, MXG 13.13 will still work correctly with
your old IMACDOS. If your dates are in European format
and you use the old IMACDOS, you will also get messages
INVALID ARGUMENT TO FUNCTION MDY and your date values
will be missing until you replace your old IMACDOS with
the IMACDOS from MXG 13.13 (and tailor it for European).
-Finally, MXG code was corrected for the Reader record and
variable FROUSRID $EBCDIC8. is now INPUT after LOCLNODE
is read in. Without this correction, an INPUT STATEMENT
EXCEEDED RECORD LENGTH error occurred if a reader record
did not contain a Network Account Number.
Thanks to ???, Alenia, ITALY.
Change 13.327 The statement %INCLUDE SOURCLIB(IMACZDAT); must be
TYPEMON8 %%INCLUDE SOURCLIB(IMACZDAT); because it is
TESTUSER inside an old-style macro definition (and TYPEMON8 was
Jan 17, 1996 inadvertently removed from TESTUSER, so I missed this!)
MXG 13.07 thru MXG 13.09 only.
Thanks to Andrew Scales, Nissan UK, ENGLAND.
Change 13.326 IDMS Severity Code, TASMSSEV no longer exists in IDMS 12,
VMACIDMS and variable TASABMSG was miscalculated. The statement
Jan 16, 1996 TASMSSEV=MOD(TASABMSG,10); was replaced with TASMSSEV=0;
and the statement TASABMSG=INT(TASABMSG/10); was deleted.
Also, variables DBKKYFMT and DBKLTYPE are now formatted
as HEX8 and DBKOWNER as $HEX2 so as to be recognized by
IDMS-literate database administrators in their tongue!
Thanks to Martin Wieland, Neckermann B.V., THE NETHERLANDS.
Change 13.325 Support for Catalog Records (Exported with IDCAMS). A
EXCTLGC1 separate dataset for each of the 13 Catalog Segments is
EXCTLGC2 created for complete decoding of all possible segments
EXCTLGC3 (and variable CATRECNR can be used to collect all of the
EXCTLGC4 segments from a specific catalog record). In addition,
EXCTLGC7 two datasets are created from specific records:
EXCTLGC8 CTLGDSN - Non-VSAM Data Set record (sequence of catalog
EXCTLGC9 segments C1/01/04/04/...). The first five
EXCTLGDS VOLSERs are kept in CTLGDSN.
EXCTLGD9 CTLGVSAM - VSAM Cluster record record (sequence of
EXCTLGE3 C3/01/C4/01/04/.../C9/01/04/04...). The
EXCTLGVS first Data VOLSER and the first Index VOLSER
EXCTLG01 are kept in CTLGVSAM.
EXCTLG02 This preliminary support code detects and deletes a few
EXCTLG03 "strange" records (always at the beginning of the Export
EXCTLG04 file), printing messages on the log. After MXG 13.13 is
EXCTLG05 built and early users have played with this new support,
EXCTLG06 I intend to examine the strange records further. I also
IMACCTLG need feedback as to intended use of the catalog records
TYPECTLG to enhance contents of the record-level datasets CTLGDSN
VMACCTLG and CTLGVSAM (and may need to add a CTLGGDG dataset!).
Jan 16, 1996 See documentation in the member on usage.
Thanks to Dale Houg, Kraft Foods, USA.
=======NEWSLETTER TWENTY-NINE Printed Changes THRU Change 13.324=======
Change 13.324 If PDBOUT=WORK was specified for READDB2, the datasets
READDB2 were written to //WORK, but then inadvertently deleted!
Jan 13, 1996 Now, they will remain in the //WORK file as requested.
Change 13.323 For CICS 2.1 and SAP, SAP journal segments (which should
VMAC110S be in a subtype=0 type 110 record) are intermixed with
Jan 13, 1996 IBM performance records in records with subtype=1, and no
one at SAP AG can tell why! (See text of Change 13.261).
This problem has only been seen with CICS 2.1 (which is
already off IBM support) at one site, and they were smart
enough to create logic to deal with that aberration and
share it with me, so I have created new member VMAC110S
by adding their workaround to the MXG 13.13 VMAC110 code.
I do not have test data records but have a hex dump of an
example bad record and have validated their logic in that
manner. If you still have CICS 2.1 and have SAP writing
data to the type 110, you should test this new member
and compare the number of observations output in all of
the CICxxxxx datasets; if they are the same, you need not
use VMAC110S, but if you have the defective records, the
normal VMAC110 will throwaway records and you will have
fewer observations output (or SAS may loop!).
To use the VMAC110S member instead of the normal VMAC110,
copy member VMAC110S into your USERID.SOURCLIB library
and rename it to VMAC110.
Thanks to Paolo Carloni, Agip petroli SPA, ITALY.
Change 13.322 Hex dumps of BETA93 release 01.06.50 records have now
VMACBETA been reviewed (See Change 13.304) and they show new time
Jan 13, 1996 values are misdocumented by the vendor. Some binary are
actually HH MM SS in PK1. fields, some HHMMSS are
SMFSTAMP8, and one SMFSTAMP8. field is reversed (date
first, time 2nd!). This change should complete support
for the new release.
Change 13.321 Duplicate LABELs were removed from members ASUM70PR,
DOC ZMACTMVS, and VMAC members 110, 110M, 30, 33, 42, 60, 74,
Jan 13, 1996 80A, 84, BETA, CMF, DCOL, HPAI, HPCS, LMS, MEMO, NDM,
NSPY, RRTM, SAMS, and TPX.
Thanks to Freddie Arie, Lone Star Gas, TEXAS.
Change 13.320 The SAS option CODEPASS=2 is now set only for execution
BUILDPDB under MVS, because CODEPASS is an MVS-only option, but
BUILD001 it causes an ERROR 2-12 INVALID OPTION NAME under ASCII
Jan 13, 1996 SAS. (In actuality, CODEPASS=2 is an MVS compiler option
that has no measurable effect on BUILDPDB, but if the
default CODEPASS=1 is in effect, SAS prints a note on
the log suggesting that CODEPASS=2 might reduce run time
so I specify CODEPASS=2 mostly to suppress the message,
rather than for any performance improvement.)
Change 13.319 The syntax OTHER="left bracket" $HEX2. "right bracket"
FORMATS or OTHER=("vertical bar" $HEX2. "vertical bar") cannot
Jan 12, 1996 be used on both EBCDIC and ASCII platforms. The left
and right brackets do not exist on MVS, and the vertical
bar ('4F on MVS) becomes '5D'x on ASCII, which must be
changed to '7C'x to work under ASCII. Fortunately, the
CHARCODE system option allows a pair of characters to
replace right and left brackets, so the syntax of
OTHER= ?< $HEX2. ?> can be used, as long as the
code is preceded by OPTIONS CHARCODE;, which has now
been added in the FORMATS member to allow this part of
MXG to execute transparently under either ASCII or MVS.
Thanks to Terry Poole, SAS Institute Cary, USA.
Change 13.318 Comparing the CPU times in VM/ESA MONWRITE data, PFXUTIME
VMACVMXA was significantly higher than VMDTTIME, because the data
Jan 11, 1996 for the time from end of last interval to logoff was not
captured. Initially, Ian's rework of the VXBYUSR code
was to use the USEINT data, but he is now convinced that
that data is not complete, and he has suggested to IBM to
include that CPU time (the time from logon to the first
interval) in the USELOF data. Now, however, his rework
produces more VMDTTIME from the combined USEACT & USEINT
datasets than the sum of PFXUTIME and PFXTMSYS derived
from the SYTPRP records! I have implemented Ian's design
in new macro _TESTMWX, which you can use in place of the
normal TESTMW macro, to see how the CPU times captured in
the user records (VMDTTIME) compares at your site. Please
let me know your results; this note will be updated based
on your feedback of his algorithm.
2016: No feedback was ever received, use _DBYUSR/_DELTALL
Thanks to Ian Davis, Worker's Compensation Board of Alberta, CANADA.
Change 13.317 Support for FRYE Systems LAN monitor for NETWARE.
ADOCFRYE Their monitor stores data into five DbaseIII files. This
ASUMFRYE support uses PROC DBF (a part of PROC ACCESS) to convert
GRAFFRYA DbaseIII into SAS files, and produces some very nice SAS
GRAFFRYT plots from the resultant file. This code can only be
IMACFRYE executed on a SAS ASCII platform, as the DBase files can
TRNDFRYE not be uploaded to a mainframe, and PROC DBF only exists
TYPEFRYE on ASCII systems. The member ADOCTYPE provides early
VMACFRYE documentation of the Netware data captured, and also has
Jan 11, 1996 three examples of converting DbaseIII into SAS (PROC DBF,
PROC ACCESS, and a DATA step).
Thanks to Chuck Hopf, MBNA, USA.
Change 13.316 Variables WRHITPCT, RDHITPCT, CHITPCT, CACHRATE, DASDRATE
FORMATS HITPCT and CIOPCT in datasets TYPE42SR and TYPE42DS and
VMAC42 the twelve S42AMxxx variables in TYPE42DS were not set to
Jan 11, 1996 a missing value when they could not be calculated or when
the fields did not exist, so values from a prior segment
in the same record were carried forward incorrectly. An
ELSE clause now sets these variables missing when needed.
The TYPE42DS records variable INTVCLOS indicates whether
the record is for an Interval or Close event, and I had
thought the Close record contained total counts for the
entire open; however, the Close event actually contains
only the counts between the end of the last interval and
the Close, so I have changed the INTVCLOS format values
from 0:CLOSE TO 0:FINAL INTERVAL.
Thanks to Peter Lauper, Bank of America, USA.
Change 13.315 Blue Line Software's Release 4.03 and 4.04 cause INPUT
VMAC28 STATEMENT EXCEEDED RECORD LENGTH with type 28 subtype D6x
Jan 10, 1996 D7x or D9x SMF records. Their fixes are 4030030/4030031
for 4.03 and 4040035 for 4.04. All are reported fixed in
their release 4.10, currently in beta testing. I have
added traps in MXG to recognize their short records and
prevent the ABEND.
Thanks to Kevin Batten, Roses Stores, Inc, USA.
Change 13.314 Variables MVCRTIME,MVLCTIME and MVUCTIME in EDGSVREC
VMACEDGS dataset should have been LENGTH 8 with DATETIME21.2
TYPETMS5 format, and variable DSAUTIME in dataset DSNBRECD should
Jan 10, 1996 have been LENGTH 8 with DATETIME18.; now all are!
Thanks to Freddie Arie, Lone Star Gas, TEXAS
==========MXG 13.09 dated Jan 10, 1996, thru Change 13.313============
Change 13.313 Support for MVS/ESA 5.2.2 Open Edition MVS (OMVS) adds
VMAC92 new flag variable SMF92MFG to TYPE9201 and SMF92UFG to
Jan 9, 1996 TYPE9205 to identify the mounter/unmounter of the file
system, and new subtype 6 (for File System Remount) will
now be output in TYPE9205 dataset (and variable SMF92STP
was added to identify Unmount or Remount).
Unfortunately, the new flag fields were inserted in the
subtype 1 and 5 records, incompatibly altering format.
Change 13.312 Support for DFSMS/MVS 1.3 (compatibly) added several new
VMAC64 variables for VSAM Record Level Sharing (RLS), including
Jan 9, 1996 separate counts of I/O requests satisfied from LSR, DASD,
or the CF (Coupling Facility) Cache Structure (variables
SMF64BMH,SMF64RIO, and SMF64CFH, respectively), and flag
variables to identify if RLS is in effect, if RLS is in
effect but measurement has been turned off, or if this is
an extended addressable dataset. When VSAM RLS is in use
existing Hiperbatch fields and buffer counts are zeroed,
and EXCP count variables ACCEXCPS and EXCPs count buffer
manager request rather than SSCHs.
Change 13.311 Support for DFSMS/MVS 1.3 (compatibly) added four new
EXTY42D1 subtypes for VSAM Record Level Sharing (RLS) activity,
EXTY42D2 with excellent measurement of RLS's usage of CF structure
EXTY42L1 (counts and durations and response). MXG creates eight
EXTY42L2 new datasets from these four new subtypes:
EXTY42P1 From new Subtype 15:
EXTY42P2 TYPE42S1 - Storage Class Sysplex-wide statistics
EXTY42S1 TYPE42S2 - Storage Class By-System statistics
EXTY42S2 These two datasets provide six sets of 17 variables:
IMAC42 DASD Summary (variables SMF42FCx and SMF42FIx)
VMAC42 DASD REDO (variables SMF42FDx and SMF42FJx)
Jan 9, 1996 SEQ Summary (variables SMF42FEx and SMF42FKx)
SEQ REDO (variables SMF42FFx and SMF42FLx)
SEQ READAHEAD (variables SMF42FGx and SMF42FMx)
SEQ PREFORMAT (variables SMF42FHx and SMF42FNx)
From new Subtype 16:
TYPE42D1 - Data Set Sysplex-wide statistics
TYPE42D2 - Data Set By-System statistics
These two datasets provide six sets of 17 variables:
DASD Summary (variables SMF42GCx and SMF42GIx)
DASD REDO (variables SMF42GDx and SMF42GJx)
SEQ Summary (variables SMF42GEx and SMF42GKx)
SEQ REDO (variables SMF42GFx and SMF42GLx)
SEQ READAHEAD (variables SMF42GGx and SMF42GMx)
SEQ PREFORMAT (variables SMF42GHx and SMF42GNx)
From new Subtype 17:
TYPE42L1 - Lock Structure Sysplex-wide statistics
TYPE42L2 - Lock Structure By-System statistics
These two datasets provide 9/10 variables.
From new Subtype 18:
TYPE42P1 - CF Cache Partition Sysplex-wide statistics
TYPE42P2 - CF Cache Partition By-System statistics
These two datasets provide 33/34 variables.
Change 13.310 Support for MVS/ESA 5.2.2 (compatibly) added new fields:
VMAC30 -TYPE30OM dataset has new variables SMF30OMS,SMF30OMR, and
Jan 9, 1996 SMF30OSY for message queue bytes and sync() functions for
Open Edition/MVS.
Change 13.309 INPUT STATEMENT EXCEEDED INPUT for PSF type 6 SMF record,
VMAC6 because IBM added 32 undocumented bytes to the APA
Jan 8, 1996 section. The change was made by APAR OW10067 and PTF
UW18264, but the description and location of the change
to the type 6 record was not contained in the APAR text!
(nor is the change documented in the 5.2.2 SMF manual).
Change VMAC6 to read:
SMF6PTDV $EBCDIC8. /* ... */ existing
@; existing
IF SMF6LN4 GT 84 THEN DO; insert
INPUT insert
SMF6OCNM $EBCDIC20. /*OUTPUT*COM*NAME*/ insert
+12 /*RESERVED*/ insert
@; insert
SKIP=SMFLN4-116; insert
IF SKIP GT 0 THEN INPUT +SKIP @; insert
END; insert
IF SMF6BNOF GT 0 THEN DO; existing
This error only occurs if the Multi-Bins header and
counter sections exist in the type 6 record.
Thanks to Veronique Planes, SAS Institute, FRANCE.
Change 13.308 Setting BUFNO=220 on the //TMC DD statement can make a
TYPETMS5 dramatic reduction in elapsed time. A fifteen-minute run
Jan 8, 1996 ran in under 4 minutes with increased buffers.
Thanks to Freddie Arie, Lone Star Gas, TEXAS.
Change 13.307 Some very simple HSM reports and a preliminary technical
ANALHSM note on how to measure HSM, and what's important in the
ADOCHSM HSM SMF records has been added in these members.
Jan 7, 1996
Thanks to Chuck Hopf, MBNA, USA.
Change 13.306 Cosmetic changes in MXG 13.08 only. The invoked message
VMXGSUM still had "XMXGSUM" and "13.01" hardcoded, now corrected,
Jan 7, 1996 and the output dataset label was double quotes instead of
blank if no dataset label was provided in the outcode.
Thanks to Freddie Arie, Lone Star Gas, TEXAS.
Change 13.305 Internal, temporary variables named DATE, HOUR, DAY, DAYM
VMXGDUR QTRHOUR HALFHOUR and MINUTE were created and dropped
Jan 7, 1996 inside VMXGDUR macro, which is called by VMXGSUM when
INTERVAL= is specified. If you wanted to keep one of
those variable names, the internal DROP statement
prevented you from doing so (and it was most definitely
not obvious why your VMXGSUM did not work!). Now, the
temporary variables names start with DUR to prevent the
inadvertent loss.
Thanks to Neil Ervin, Huntington Services Company, USA.
Change 13.304 Support for BETA93 Release 1.06.50 (INCOMPATIBLE) inserts
VMACBETA fields in existing records, and adds five new subtypes
Jan 7, 1996 which create five new datasets:
BETA20 - Browse or Print of List or Report
BETA21 - Browse Selection Action
BETA40 - Archive of a List
BETA41 - Reload of a List
BETA42 - Deletion of an Archive Generation Record
Existing variable names were based on the DSECT names,
but this caused the same entity (eg., pages or lines) to
have a different variable name in each of the existing
seven datasets; for consistency and ease in reporting I
have renamed some of these variables, knowing full well
that my changes may cause your existing reports to fail
with VARIABLE NOT FOUND errors, for which I apologize!
Labels were also made consistent and more descriptive.
The changes have been tested with prior release data,
but not yet with records from 1.06.50. See Change 13.322.
Change 13.303 New variable MXGVERSN is kept in TYPE70 and PDB.RMFINTRV
RMFINTRV datasets so you can tell which version of MXG created the
VMAC7072 dataset from SMF. I did not think it necessary to add
Jan 6, 1996 the 6-byte version name ('13.13 ') in each MXG dataset.
Should you need to create MXGVERSN in other datasets,
you can use this logic (as macro variable MXGVERS is a
Global macro, set at SAS initialization by VMXGINIT):
MXGVERSN=SYMGET('MXGVERS');
and then add MXGVERSN to the _K macro defined in the
IMACxxxx member for the product - See Change 10.175.
Thanks to Don Deese, (CPExpert), Computer Management Sciences, USA.
Change 13.302 Landmark's TMON for UNIX dataset TUXCPU is now created,
EXTUXCPU all datasets have now been tested with data, and formats
VMACTUX for rates and percentages are now consistent. However,
Jan 6, 1996 there are still unfixed problems that won't be fixed at
least until their ML 3.3 release:
-Datasets TUXCONEC (connections), TUXPROG (program) and
TUXPROC (process) have occasional short records (i.e, one
or more fields and their delimiters do not exist in the
data record!), causing INPUT STATEMENT EXCEEDED LENGTH
errors. Landmark Activity 49861 still open.
-Two undefined fields are in the data record that are not
in the header in TUXNFSCL (nfsclient), TUXSOCK (sockets)
and TUXUSERI (userio), causing variables WRITBLOK,
READPART, WRITPART, READFAIL, and WRITFAIL to be trashed
in those three datasets. Ref. 47164.
-Of more concern, monitor intervals are not synchronized
and timestamp values are very suspect.
I expected one minute interval data to be written each
minute, but the one set of TUXINFO (info) records had
event timestamps starting at 17 seconds after the minute,
drifting to 55 seconds after the minute in only a few
minutes: 17,15,26,28,26,26,...26,36,37,39,44,49,55
New test data for the cpu table (TUXCPU) permits better
analysis, because both EVENTIME (log_time) and the true
HRDWTIME (BOOTTIME plus UPTIME) can be compared.
Both clock shows that interval durations are not only not
synchronized but also are quite erratic, and each record
shows a different interval depending on which clock value
you examine! Comparing durations in the same record:
from hardware clock: 59,99,151,41,60,126,146,113
from log_time clock: 60,97,116,61,60,122,142,118
Comparing the hardware timestamp with the log_time in the
same record shows that the logtime sometimes is only 1-2
seconds later than the hardware timestamp (with a 5-hour
difference between GMT in hardware and EST in local), but
other intervals have a log_time several minutes later
than the hardware time, and a few records are really bad,
with the hour-part difference only two instead of five!
This is clearly a serious problem, and Landmark is now
aware of these discrepancies in their monitor. This text
will be updated when Landmark responds.
Thanks to Dan Sidorick, SmithKline Beecham, USA.
Change 13.301 Decoding DEVCLASS and DEVTYPE in VMACUCB still tested the
VMACUCB first bit of DEVNR and set DEVICE='MSS' if on, but this
Jan 5, 1996 is incorrect now, as four-digit device numbers exist, and
MSS devices do not, so that test is now disabled!
Change 13.300 New variable HIGHRBA is now created in TYPE64 with the
ANAL4GB allocated size (in bytes) of the VSAM file (using logic
VMAC64 from GC26-4574-2 to calculate CI's per track for 3380s
Jan 5, 1996 and 3390s). Member ANAL4GB then identifies those VSAM
files that are over 80% of the IBM hard limit maximum of
4GB for VSAM files, so you can forewarn their owners!
Thanks to Chuck Hopf, MBNA, USA.
Change 13.299 H-P's MEASUREWARE (formerly HP-PCS) does not record true
IMACHPAI CPU seconds in the HPxxGLOB and HPxxAPPL datasets, but
IMACHPSU instead records only the Average CPU time per CPU Engine,
IMACHPUX and then does NOT record how many Engines there are, so
VMACHPAI so you get correct total CPU time from the data records.
VMACHPSU While I regard this as an ERROR, HP considered it only an
VMACHPUX enhancement request! The NRCPUS field is in the CONFIG
Jan 6, 1996 records, but unfortunatly the HP Extract program is hard-
Jan 18, 1996 coded to put the CONFIG records at the end of its output
file. HP was persuaded to provide a workaround Script
that was to sort the Extract output and interleave the
CONFIG records to appear first (and simultaneously, that
interleave would have supported dynamic changes in the
number of engines, if "VARY CPU OFFLINE" ever becomes a
UNIX option!), so MXG logic was reordered to look for the
CONFIG records first, and retain NRCPUS into the needed
datasets. Unfortunately, the first Script did not work
as expected, so HP is back working on the problem as this
Newsletter goes to press. As an interim MXG workaround,
I have added a user-specified macro in IMACHPAI, IMACHPSU
and IMACHPUX which defaults to one CPU, but allows you to
tell MXG if you have more than one Engine. That logic
will be revised when HP provides a solution to the basic
problem, and this text will be revised to point to a
later change when there is a solution.
MEASUREWARE records are NOT supported in MXG 13.13; as I
stated in this text in Newsletter TWENTY-NINE, I had just
received test data as that newsletter went to print, and
now my fears are confirmed: HP made INCOMPATIBLE changes
between PCS records and MEASUREWARE records that will
require significant changes in MXG support. If you are
replacing HP-PCS with MEASUREWARE, please fax me for the
status of those changes (and identify the system, HP, AIX
or SUN, that you need supported, as each is different!).
Thanks to Thierry Van Moer, Procter & Gamble, BELGIUM.
Change 13.298 Format MGTANDS now decodes device type =38 (38:2GB) disk
FORMATS device, and variables LDEV and CTRL are now input as
VMACTAND $CHAR2. with a $OCTAL6. format, so device and control
Jan 4, 1996 unit are printed as TANDEM sysprogs expect.
This was my first use of the $OCTAL format, and Steve
Smith discovered what happens when I underspecified
the output width. Forgetting that a two-byte field
requires six print positions for its value in octal, I
initially assigned $OCTAL4 to a two-byte character
variable, but when a two-byte field containing '0056'o
(octal), or '002E'x (hex) was input, the value 0000
was printed, because SAS truncates character variables
on the right. Steve changed $CHAR2 to PIB2 and
$OCTAL4 to OCTAL4, and the correct value 0056 was
printed, because SAS truncates numeric variables on
the left! Of course, specifying the correct width of
$OCTAL6 or OCTAL6 prints 000056 and eliminates the
exposure to truncation differences!
Thanks to Steve Smith, BGS Systems, USA.
Change 13.297 Spelling corrections in labels, consistent comments after
EXVMxxx output statements, and removal of duplicate names in KEEP
VMACIDMS lists were made in members VMACAXC, VMACDB2, VMACDCOL,
Jan 2, 1996 VMAC28, VMACAIM7, EXDB2PAT, EXTY72GO, VMACTPM, JCLUXRE6.
VMACIDMS now includes IMACZDAT (needed only if TYPEIDMS
was executed standalone).
EXVMxxx members now have their "_LVMxxxx" macro names
instead of hard-coded dataset names for VM Accounting.
All of these changes were precipitated by Freddie's
excellent "MXG SOURCE CODE ANALYZER" program.
Thanks to Freddie Arie, Lone Star Gas, TEXAS.
Change 13.296 Variable TRANTYPE in dataset CICSTRAN with CICS/ESA 4.1
FORMATS was changed by IBM. Previously IBM used the fourth byte
VMAC110 of a four-byte field; now they use the first two bytes of
Dec 29, 1995 a four-byte field, so the length of TRANTYPE is increased
to two bytes, the INPUT for 4.1 records was reordered and
the MG110TT format was changed to decode both the old
one-byte value and the new one-and-two-byte values!
Thanks to ????, Banco Santander, SPAIN.
Change 13.295 Support for DFSMS/MVS 1.3 DCOLLECT records COMPATIBLY
EXDCODAI added a number of new variables to these datasets:
EXDCODCN DCOLDSET,DCOLCLUS,DCOLMIGS,DCOLBKUP,DCOLDC,DCOLSC,DCOLBC
IMACDCOL DCOLSC,DCOLVL,DCOLAG,DCOLDR,DCOLLB
VMACDCOL and two new datasets are now created:
Dec 29, 1995 DCOLCN - Cache Names (Cache Set name and 8-SES Caches)
DCOLAI - Accounting Information (audit of definitions
of data class, management class, storage class
and storage group - who/when updated, which
dsname/member)
In addition, enhancements to the existing DCOLLECT code
for the construct datasets were made. Variables with hex
flag values are now INPUT as $CHAR instead of $EBCDIC and
are formatted HEX or $HEX, new MGDCOxx formats now decode
variables, especially in DCOLMC and DCOLSG datasets, and
new multi-valued flag variables were created and decoded.
Thanks to Mike Moos, British Rail, ENGLAND, for construct changes.
Change 13.294 Variable DEVICE in TYPE64 was truncated to two bytes, if
VMAC64 TYPE64 member was executed by itself. The statement
TRNDCICS DEVICE=' '; must be changed to DEVICE=' '; to get
Dec 28, 1995 all seven positions of DEVICE type name.
Thanks to Chuck Hopf, MBNA, USA.
Change 13.293 Change 13.268 (adding USER to the SUMBY list for building
ASUMCICS PDB.CICS from CICSTRAN) was not applied to ASUMCICS nor
TRNDCICS to TRNDCICS, but now both members have been changed.
Dec 18, 1995
Thanks to Richard S. Ralston, Whirlpool, USA.
Change 13.292 IBM creates invalid CICS Statistics records with CICS 3.3
VMAC110 that cause UNEXPECTED STATISTICS RECORDS with STILEN=0,
Dec 18, 1995 which caused MXG to fill the //WORK file. While IBM is
trying to find their error, MXG has added logic to detect
the STILEN=0 condition and prevent the error.
To circumvent the error, in member VMAC110, find the
INPUT statement that inputs STILEN, STID, and STIVERS,
and after the @; that ends that INPUT statement, insert
IF STILEN=0 THEN DELETE;
which will cause MXG to stop processing that 110 record.
Thanks to David Callahan, Caterpiller Inc, USA.
Change 13.291 CICS/ESA 4.1 only, MXG 13.07-MXG 13.08 only. The CICSTRAN
VMAC110 variables ENDTIME, ELAPSTM and IRESPTM are wrong. Change
Dec 18, 1995 13.247 (GMT support) was incorrectly typed in VMAC110.
The two lines reading: ENDTIME =ENDTIME =MCTMNTAD;
must both be changed to: ENDTIME =ENDTIME +MCTMNTAD;
(Since ASUMCICS and TRNDCICS use STRTTIME rather than
ENDTIME to classify a transaction, the ENDTIME error is
noticed only if you look at a specific transaction, but
because IRESPTM is used for the response time buckets,
those data for your CICS/ESA 4.1 systems is wrong.)
ENDTIME is also wrong in dataset CICSEXCE.
Thanks to Neil Ervin, Huntington Service Company, USA.
==========MXG 13.08 dated Dec 15, 1995, thru Change 13.290============
Change 13.290 Cleanup of dead members and dead references; Freddie has
IMACNPM built a SAS program that reads my SAS programs to find
TYPEZRB members-not-referenced, comments-misspelled, etc. This
Dec 12, 1995 sweep removed references to VMAC43PC,VMAC47PC,VMAC48PC,
and VMAC49PC in member VMACTEST (a private test program),
and deleted members IMACNPM and VMACZRB0 (both archaic
and no longer needed nor referenced)
Thanks to Freddie Arie, Lone Star Gas, TEXAS.
Change 13.289 Support for MVS Solutions's Thruput Manager SMF record
EXTYTPMF creates two data sets from the single SMF record:
EXTYTPMV TYPETPMF - Thruput Manager Job Analysis
IMACTPM TYPETPMV - Thruput Manager Variable Fields
TYPETPM
VMACTPM
Dec 12, 1995
Thanks to Dan Kaberon, Hewitt Associates, USA.
Change 13.288 Support for Landmark's TMON for UNIX creates 34 datasets:
EXTUXBLO
EXTUXCLI MXG Data INFILE Landmark
EXTUXCON Set Name name Table name status
EXTUXCUR
EXTUXDIS TUXBLOCK TUXBLO blockdevice TESTED
EXTUXDSK TUXCLIEN TUXCLI clientdetail TESTED
EXTUXFIB TUXCONEC TUXCON connections See Note 1, below
EXTUXFIH TUXCURDI TUXCUR currentdir TESTED
EXTUXFRE TUXDISK TUXDIS disk TESTED
EXTUXINF TUXDSKPR TUXDSK diskprocess TESTED
EXTUXINT TUXFILEB TUXFIB filebalance TESTED
EXTUXLIM TUXFILEH TUXFIH filehistory TESTED
EXTUXMEM TUXFREE TUXFRE freespace TESTED
EXTUXNFS TUXINFO TUXINF info TESTED
EXTUXNFR TUXINTER TUXINT interface TESTED
EXTUXOPN TUXLIMIT TUXLIM limits TESTED
EXTUXPRD TUXMEMRY TUXMEM memorymgmt TESTED
EXTUXPRC TUXNFSCL TUXNFS nfsclient See Note 2, below
EXTUXPRO TUXNFSRV TUXNFR nfsservice TESTED
EXTUXPRF TUXOPENF TUXOPN openfiles TESTED
EXTUXPRS TUXPRODI TUXPRD processdisk TESTED
EXTUXPGM TUXPROC TUXPRC process TESTED
EXTUXPCL TUXPROCO TUXPRO processor TESTED
EXTUXQUO TUXPROFI TUXPRF processfiles TESTED
EXTUXRSP TUXPRODS TUXPRS processdisposition TESTED
EXTUXSRV TUXPROG TUXPGM program TESTED
EXTUXSOC TUXPROTO TUXPCL protocol TESTED
EXTUXSTO TUXQUOTA TUXQUO quotas no test data yet
EXTUXSYS TUXRESP TUXRSP response TESTED
EXTUXTAB TUXSOCK TUXSRV server See Note 2, below
EXTUXTRM TUXSTOR TUXSOC sockets TESTED
EXTUXUSR TUXSYSTM TUXSTO storage TESTED
EXTUXUSI TUXTABLE TUXSYS system TESTED
EXTUXWAI TUXTERM TUXTAB tables TESTED
IMACTUX TUXUSER TUXTRM terminal TESTED
TYPETUX TUXUSER TUXUSR user TESTED
VMACTUX TUXUSERI TUXUSI userio See Note 2, below
Dec 12, 1995 TUXWAITS TUXWAI waits TESTED
The Landmark EXPORT command that is used to create the
data files that are read by MXG has these known errors
December. Landmark expects to have a revised EXPORT
command module by January to correct these errors:
1) The connections table, MXG data set TUXCONEC, has some
data records with fields missing, causing an INPUT
STATEMENT EXCEEDED RECORD LENGTH error with that file.
2) The TUXNFSCL (nfsclient) TUXSOCK (server) and TUXUSERI
(userio) tables have numbers instead of names for some
fields in the header, so those data sets are not yet
completely valid until Landmark corrects their data.
Member JCLTUX gives an example of the JCL required that
will read all 34 files created by TMON for UNIX's export
command.
Change 13.287 Support for the VM/ESA SQL/DS Remote User Record in the
EXVMSQLR VM Account file. The new record INCOMPATIBLY alters the
TYPEVM VMSQLUSR record (SQLCPUTM in hundreds of hours), because
Dec 12, 1995 it the MXG logic unknowingly output the new record there!
This change recognizes the new record and outputs it into
new dataset VMSQLRMT instead.
Thanks to Norbert Korsche, OMV AG, AUSTRIA.
Change 13.286 MXG 13.06-13.07. ERROR: THE KEYWORD PARAMETER ALOC3590
ANALTAPE WAS NOT DEFINED. Two line reading ALOC3490=TAPE3490;,
Dec 12, 1995 must have the comma at the end of the line removed, and
twos line reading ALOC3490='3490 ALLOCATIONS WAITING';,
must have both the semi-colon and the comma at the end
of the line removed. Four lines needed correction.
Thanks to Jon Caldwell, U.S. Department of Veterans Affairs, USA.
Thanks to Mike Hampton, First Nationwide Bank, USA.
Change 13.285 Cosmetic documentation change. References to ANALDB2 were
ADOCDB2 changed to DIFFDB2, the "four datasets" note was changed
DIFFDB2 to "three datasets", and change 12.033 is referenced
Dec 12, 1995 instead of change 12.034.
Thanks to Nico Lenaerts, SAS BELGIUM, BELGIUM.
Change 13.284 REXX program to convert GTF trace records from DB2 into a
REXXDB2 legitimate (un-segmented) records had typographic errors.
Dec 12, 1995 -All C2K should have been C2X instead.
-The NE should have been <> instead.
-The statement I=REC must be changed to F=REC.
-The concatenation symbol '6A'x needs to be '4F'x for MVS.
That character is mis-translated between EBCDIC/ASCII by
many upload/download packages, so the actual change was
to replace F=F||G with F=(F)(G)so that the
REXX program is impervious to upload/download.
Thanks to Eric Thornton, D&B, USA.
Thanks to Chuck Hopf, MBNA, USA.
======= Attended CMG 95 Conference in Nashville, Tennessee ============
Change 13.283 Support for TANDEM D20, D30, and D40 releases is added
VMACTAND compatibly. However, I found I cannot trust the TANDEM
Dec 2, 1995 MEASURE documentation; its DLLs show changes where there
Dec 12, 1995 were none! (Fortunately, CMG came to the rescue as there
Jan 3, 1996 I met a TANDEM employee who put me in touch with the real
programmer who wrote the code!). Two variables were added
compatibly by D30 (BEGTRANS,ABRTRANS) by using reserved
space in the PROCESS record. Several measurement fields
(lock-pages-qtime/count and UCL-lock-qtime/count in the
PROCESS record, and the four pairs of START/END variables
for UDS-LOCK, SDS-LOCK,UCL- LOCK, and SCL-LOCK in the
DISC record) were made reserved fields in D40 (because
they were too expensive to capture!). The DDL for D40 are
wrong, as they show BEGTRANS/ABRTRANS in the wrong place,
and the now-reserved fields were deleted from the DDL,
but they were not deleted from the physical record.
Thanks to Joe Fleischmann, US Bancorp, USA.
Thanks to Todd Tomita, US Bancorp, USA.
Thanks to Steve Smith, BGS Systems, USA.
Change 13.282 MAINTLEV 7 of the MXG Tape Mount and Allocation Monitor
ASMTAPES corrects the JSCB access problem, the CA-11 restart case,
Nov 30, 1995 and supresses the SRB dump messages (unless we ask you to
enable DEBUGGING!). This iteration has been running in
two sites for several weeks with no failure. The previous
monitor code was copied into ZSMTAPES for backup.
Change 13.281 This replacement for member CICINTRV is temporarily put
CICINTRZ in this member for extensive testing, but it will become
Nov 30, 1995 CICINTRV in the near future. The present CICINTRV logic
is incorrect, and this new logic correctly creates the
CICS interval datasets from the statistics datasets.
This version first summarizes the individual datasets at
the lowest level, and performs deaccumulation with DIF()
function for the REQ and USS records so that all four
types of CICS stat records are correctly summarized into
the CICINTRV dataset. Note that this can be resource
intensive if you have lots of CICS activity, but you can
construct the CICS activity from these statistics records
even if you have turned off CICSTRAN creation!
Revised Jun 13, 1996: Resources are not a problem; see
resource measurements in text of Change 14.132, which
implemented these enhancements starting with MXG 14.04.
Thanks to Chuck Hopf, MBNA, USA.
Change 13.280 Correction. If no summary dataset was created, but
ANALCNCR summary reports were requested, the summary reports were
Nov 30, 1995 not produced.
Change 13.279 New parameters SMFBEGIN and SMFEND were added to allow
READDB2 selection while the raw SMF records are read. These new
Nov 30, 1995 parameters are now used by ANALDB2R (Change 13.278).
Change 13.278 Several enhancements to DB2 reporting.
ANALDB2R -Reports can now be produced from MNTHxxxx datasets, if
Nov 30, 1995 you have used the MNTHxxxx members to trend monthly.
-When reading SMF, the BEGTIME and ENDTIME values are now
passed to READDB2 (as SMFBEGIN/SMFEND) so that selection
applies to the raw data as it is read, which will reduce
DASD space and run time, especially with big traces.
Change 13.277 This utility (used only in JCLTEST6, to select ten SMF
VMXGGETM records of each type) has new INCODE= operand added to
Nov 30, 1995 enhance selection criteria, for those of you who have
found this utility useful! You could now code
INCODE=IF (ID=30 AND 4 LE SUBTYPE LE 5) OR ID=72; ,
to select only those records and subtypes.
Thanks to Chuck Hopf, MBNA, USA.
Change 13.276 The revised VMXGSUM logic has been moved from XMXGSUM to
VMXGSUM VMXGSUM, and member XMXGSUM has been deleted. (Just in
XMXGSUM case, the old VMXGSUM was copied into ZMXGSUM for backup,
ZMXGSUM but that member too will go away in time). The new logic
Nov 30, 1995 in VMXGSUM will significantly reduce the DASD space, CPU
time and run time, as it keeps only the variables that
are actually needed by the summarization, and (unlike the
old VMXGSUM), it does not create dummy variables in
the output dataset. It also supports variable lists with
hyphenated syntax. Many sites with large data volumes
have been using the XMXGSUM logic, so I believe it is now
safe to make the MXG default to be the new logic.
Change 13.275 New parameters INTERVAL and MYTIME are defined for report
ANALRMFR summarization, but they are only implemented in MXGCHAN
Nov 30, 1995 report at this time.
Change 13.274 CICS shutdown reports CICCONSR or CICCONMR can cause many
ANALCISH blank pages with only the heading and no content; several
Nov 30, 1995 line changes were required, too complicated to show here.
Also, END; statement was missing after IF INOBS EQ CXMC.
Thanks to Richard S. Ralston, Whirlpool. USA.
Change 13.273 Support for DB2 4.1 type 102 trace records has tested the
VMAC102 new IFCIDs 221, 222, and 231 for parallel group tracing,
Nov 30, 1995 and adds new fields in existing trace datasets for IFCIDs
8, 10, 20, 21, 22, and 28. There are still other fields
added to other IFCIDs by 4.1 that are not yet decoded by
MXG due to absence of test data records; those will be
added when user demand and test data arrive together.
Thanks to Ted Blank, IBM, USA.
Change 13.272 Corrections to several variables in HP PCS records:
VMACHPAI -VMACHPUX, comment now has HPUX as correct INFILE name.
VMACHPSU -VMACHPUX, PIN variable removed from LENGTH statement so
VMACHPUX that it will be numeric rather than character (as it was
Nov 29, 1995 in HPAI and HPSU members, like all other PINs).
-INTEREST now input as INTEREST $CHAR12. (instead of with
no INFORMAT) as the file may contain leading blanks.
First test for INTEREST that sets IMPWTHI was deleted.
Last four tests for INTEREST must test for lower case
letters c,d,m,i rather than upper case values.
Thanks to Thierry Van Moer, Procter & Gamble Europe, Belgium.
Change 13.271 Variables SYSNAME and SYSPLEX were not kept in BUILDPDB
IMACPDB datasets PDB.JOBS, PDB.STEPS, and PDB.PRINT, but they are
Nov 29, 1995 now added to _PDB30_1, _PDB30_4, and _PDB30_5 macros in
member IMACPDB so they will be kept in the PDB datasets.
Thanks to Dr. Alexander Raeder, Karstadt AG, GERMANY.
Thanks to Harmuth Beckmann, Karstadt, AG, Germany
Change 13.270 IBM writes truncated EREP records, but MXG did not catch
VMACEREP the truncation, causing INPUT STATEMENT EXCEEDED RECORD
Nov 29, 1995 for a hardware detected VLF software record. Protection
was added for dataset EREPSDW. Additionally, the ERRORID
field at the end of the SDW record was not input from the
correct location, and variable CLASRC is now kept in the
EREPSDW, EREPEOD, EREPMDR, and EREPOBL datasets.
Thanks to Solomon Baker, The Prudential Service Company, USA.
Change 13.269 Variables QBSTHPL and QBSTVPL were removed from DIF()'ing
DIFFDB2 because they are not accumulated values, but rather are
Nov 28, 1995 the number of hiperspace and virtual pool buffers.
Thanks to Alan Fendler, Pershing Info Management Services, USA.
Change 13.268 Variable USER was added to the default summarization of
ASUMCICS CICSTRAN dataset into PDB.CICS, because OPERATOR is now
Nov 28, 1995 usually blank, while USER contains the wanted user-id.
Dec 18, 1995 The summarization default is now by
APPLID OPERATOR USER TERMINAL TRANSACT (for each hour).
Thanks to Clark Jennings, Reynolds Metal, USA.
Change 13.267 Another IDMS 12.01 error, INVALID DATA FOR PMHSDATE for
VMACIDMS the PMHRTYPE=6 (Journal Wait) subtype. The statement
Nov 20, 1995 SKIP=SKIP-108; that is two lines prior to the statement
%%INCLUDE SOURCLIB(EXIDMJRL); should been
SKIP=SKIP-104;. (My test data stream did not have any
journal wait data, but this was an MXG coding error.)
Thanks to Dan Gilbert, Bergen Brunswig Corporation, USA.
Change 13.266 Variable STARTIME was missing TSOMCMND if the TSO/MON
VMACTSOM SMF record was written in segments (because there were
Nov 20, 1995 more logged on users that would fit in one SMF record).
STARTIME was added by Change 13.089 for consistency, but
the pre-existing, same value variable STRTTIME was never
wrong! Immediately following STRTTIME=TSOMSTAR; insert
STARTIME=STRTTIME;
Thanks to Neil Ervin, Huntington Services Co, USA.
Change 13.265 Support for IMS 5.1 records (INCOMPATIBLE) was reported
ASMIMSLG with these changes.
VMACIMS -ASMIMSLG - Replace these three non-contiguous lines
Nov 17, 1995 TM MSGCFLG1,MSGC1RAC TM MSGCFLG1,MSG3RACF
---17 lines ----
USING MSGRACF,R4 USING MSGSEC,R4
--- 8 lines ----
MVC ORGENT(8),MSGRACGP MVC ORGENT(8),MSGSAFNM
(with this change to ASMIMSLG, it can ONLY process 5.1
records, so you will need to maintain two separate load
libraries and separate job streams).
VMACIMS
18 new 4-byte fields were inserted in the 07 log record
between MSGGCMD and PDATE.
This is a documentation only change at this time, as I am
still awaiting data and documentation so that I can
validate this report and then change the MXG coding.
Now, see Change 14.030.
Thanks to Mr. Hellmann, Sudwestdeutsch Landesbank, GERMANY.
Change 13.264 TANDEM disk type format MGTANDS values are decimal, not
VMACTAND hex, so the "X"'s were removed, and the 35:3GB value has
Nov 16, 1995 replaced the 35:MGB spelling.
Thanks to Steve Smith, BGS Systems, USA.
Change 13.263 IBM lied, and JESNR may show only four digits in TYPE26J2
VMAC26J2 dataset (and if BUILDPDB finds only a purge record for a
Nov 13, 1995 job, its PDB.JOBS observation will have JESNR=1179 where
Feb 26, 1996 it should be JESNR=11179. IBM documentation of SMF26JNM
(the old, 4-position EBCDIC JESNR) says it will be zero
if the job number is 10,000 or greater, causing MXG to
get JESNR from SMF26JID, and this was true until now, but
it appears MVS/ESA 5.2 with JES x.y are now putting the
truncated JESNR back into SMF26JNM! While I chase after
the IBM INCOMPATIBLE change to type 26 record, I can fix
the MXG logic to work no matter what IBM does. Change:
ELSE DO;
IF JESNR GT 0 THEN
INPUT @57+OFFSMF TYPETASK $EBCDIC3.
+5
@;
ELSE
INPUT @57+OFFSMF TYPETASK $EBCDIC3.
@60+OFFSMF JESNR &NUM.5.
to read:
ELSE DO;
INPUT @57+OFFSMF TYPETASK $EBCDIC3.
@60+OFFSMF JESNR &NUM.5.
Feb 26, 1996 update: IBM APAR OW18822 acknowledges the
error and should correct the non-zero value back to zero,
but the MXG correction in MXG 13.13 fixes it anyhow!
Thanks to Tim Terbieten, Newell Company, USA.
Change 13.262 Variable DEVPLX, the device address of the duplex volume,
VMACACHE is an offset from the first device instead of the real
Nov 8, 1995 device number; now, DEVPLX will contain the true device
Dec 2, 1995 number by inserting these lines:
IF NDVCNT=1 THEN BASDEVN=DEVN;
IF DEVS1='....1...'B THEN DEVPLX=BASDEVN+MOD(DEVS2,64);
before the %%INCLUDE SOURCLIB(EXCAC90); statement.
I note that the Cache record does not contain a segment
for the duplex device; DEVPLX=05x, BASDEVN=2C0x, so the
duplex device address is now DEVPLX=2C5x, but there will
be no observation in CACHE90 with DEVN=2C5x.
The above correction worked until MVS/ESA 5.2, which has
caused an unexpected (at least by the CRR-folks) change
in the CRR record. The BASE device number used to be the
first device segment returned by the 3990 controller, and
that address is copied into the statistics segment. But
in 5.2, the order in which devices are varied online at
IPL is different, and the 3990 returns devices in order
they came online, so the base device is no longer going
to be in the first segment. IBM CRR Level II has this;
when they decide what they are going to do, so will I!
Thanks to Kurt Koch, West Publishing Corporation, USA.
Change 13.261 SAP Journal segments in type 110 records caused error
VMAC110 INPUT STATEMENT EXCEEDED, or INVALID DATA FOR HH, or did
Nov 8, 1995 not read in all segments in the SMF record, because MXG
Jan 13, 1996 did not anticipate that SAP would create journal segments
with only a header,
(found for the YISA APPC host-to-host connection
application, with JCSPTRAN='YISA', JCRLL=30, so there
is no data - these segments may be output into a new
dataset if there is usefulness, and this fix still
leaves them available in the EXCICJRN exit),
or with JCRUTRID not containing 'SA',
(found for a most strange segment between other 'SA's,
containing a Global Performance Interval segment with
MCTSSDID=2 which belongs in a subtype =1 record and
is normally output into CICSYSTM from that subtype!;
UPDATED Jan 13. SAP Technical Support has not responded,
but the second problem is circumvented in Change 13.323.
Header only segments are skipped over with these changes:
-Delete the line ... INPUT +6 SAPTEST $EBCDIC2 @LOC @;
-Change IF SUBTYPE=0 OR SAPTEST='SA' THEN DO UNTIL ...
to IF SUBTYPE=0 THEN DO UNTIL ...
-Change IF JCRUTRID='SA' THEN DO;
to IF JCRUTRID='SA' AND JCRLL GE 250 THEN DO;
Unrelated to the above errors, variable APPLID was added
to the KEEP= list for the CICSSAP dataset so CICSSAP can
be analyzed for each CICS region.
Thanks to Jens Schlatter, EDP Consulting Schlatter, GERMANY.
Thanks to Norbert Korsche, OMV, AUSTRIA.
Thanks to Paolo Carloni, Agip petroli SPA, ITALY.
Thanks to ????, Deutsche Post AG, GERMANY.
Change 13.260 RMDS 1.4 records may cause INVALID ARGUMENT TO MDY AT ...
VMACRMDS because only some MDY() functions were protected for the
Nov 8, 1995 'strange' values MO=99 and DD=99.
Feb 26, 1996 -Now, all uses of MDY() are protected with logic of the
form:
IF YY GT 0 AND (YY NE 99 AND MO NE 99 AND DD NE 99)
THEN xxxxDATE=MDY(MO,DD,YY);
-In addition, INVALID DATA FOR MM can occur, because only
some INPUTs of HH MM and SS were protected with the ??
modifier. Now, all fields input with &NUM are preceded
by the double-question-mark modifier.
-Finally, all HMS() functions are now protected with
IF 0 LE HH LE 24 and 0 LE MM LE 60 and 0 LE SS LE 60
logic to prevent invalid arguments to HMS() function.
-The error does not occur with current RMDS 2.1 or later.
Note added Feb 26, 1996: The support for RMDS 1.3/1.4
also deleted the two tests:
IF RMDSACT='D' and RMDSORG NE 'A' THEN RMDSACT='T';
IF RMDSACT='U' AND RMDSORG EQ 'V' THEN RMDSACT='S';
because the activity codes of 'T' and 'S' do not exist
in RMDS version 2.1.
Thanks to Ambat Ravi Nair, Trident Infotech Pte Ltd, SINGAPORE.
Change 13.259 MXG 13.06-13.07 only. ABARS enhancement validation:
EXHSMWWV -UNEXPECTED IDHMSMDS RECORD FOUND because the line now
IMACHSM reading ELSE IF DSRVSR='VRS' THEN ... should have been
VMACHSM ELSE IF DSRVSR='VSR' THEN ....
Nov 8, 1995 -INPUT STATEMENT EXCEEDED RECORD LENGTH on ABARS subtype
Nov 15, 1995 because the four fields WFSRML0U,WFSRML1U,WFSRML2U, and
WFSRTOTU at the end of both ABARS segments are now INPUT
as $EBCDIC1. instead of &PIB.4. MXG now decodes the unit
of space value (blank, K, M, etc.) and converts the space
used during ABACKUP variables WFSRML0S,L1S,L2S,TOTS into
bytes, and are formatted with MGBYTES to print pretty.
-Variable WFSRABCC is now input as $EBCDIC4. vice &PIB.4.
-IBM clarified several issues. Space units of K,M,G,T are
1024 (as expected, but since IBM used 1000 for hardware
"K", and since the ABARs documentation did not say, we
had to ask!). Also, ABACKUP VERIFY does cut a shorter
record that does not contain the space information fields
while ARECOVER creates a longer record, but zeroes out
the space information fields.
-New HSM dataset HSMWWVOL is created, but with zero obs
until you remove the comment block in member EXHSMWWV.
(This dataset will contain one obs for each volser that
was used by ABARS for backup, and I perceive little need
for that information; the useful ABARS information is in
the HSMWWFSR dataset, one obs per ABARS event.)
Thanks to Michael E. Friske, Fidelity Savings, USA.
Change 13.258 Very obscure, and only for the early users of XMXGSUM.
XMXGSUM Change the second occurrence of NUMPOS= from &HYPHEN1 to
Nov 6, 1995 &HYPHEN2. Would have caused an OUT OF MEMORY error.
Change 13.257 Variable AVGQUETM should not have been in the keep list
VMAC7072 for dataset TYPE72GO, as that field is from the subtype 2
Nov 6, 1995 (RMF Monitor III) record, and is output only in TYPE72MN.
Thanks to Don Deese, (CPExpert), Computer Management Sciences, USA.
Change 13.256 Variable QBGAGN should be kept only in DB2ACCTG, and not
VMACDB2 in DB2ACCT, and it should not have been summed during the
Nov 6, 1995 creation of DB2ACCTG. It is the pool ID, not a counter!
Thanks to Chuck Hopf, MBNA, USA.
Change 13.255 Tandem variables CnMISSES was repeated in INPUT; the two
FORMATS instances are now named CnRMISS and CnWMISS for Read or
VMACTAND Write misses. C1BLKS is no longer divided by DURATM, as
Nov 6, 1995 it is blocks allocated, not blocks moved in interval.
Format MGTANDS was updated with device 1Fx and will now
print un-coded values in hex rather than decimal.
Thanks to Steve Smith, BGS Systems, USA.
Change 13.254 Support for TOPSECRET Release 4.4 and 5.0, INCOMPATIBLE,
VMAC80 CAUSES INPUT STATEMENT EXCEEDED RECORD error, because the
VMAC80A new release sets a value of 44X or 50X for RACFVRSN, but
Oct 31, 1995 MXG does not know in advance what value TOPSECRET will
use! Add OR RACFVRSN=44X OR RACFVRSN=50X to the test
for TOPSECRET in both members. (44X exists in 4.4 data;
5.0 is not out yet, so I am gambling in advance that they
will use 50X for that version when it's released!).
Thanks to Mark Paulson, Maurices Incorporated, USA.
Thanks to Sarah Gartner, Hudson's Bay Company, CANADA.
==========MXG Version 13.07, dated Oct 30, 1995, thru 13.253==========
Change 13.253 SAP 5.0.E creates invalid journal segments, which caused
VMAC110 INVALID DATA FOR HH and a hex dump of the record, but MXG
Oct 27, 1995 successfully skipped over the invalid segments and output
the valid ones. SAP had no one in tech support on Friday
to discuss their error before MXG 13.07 was built, but I
will pursue this with them later and update this note.
To eliminate the hex dump and message, insert ?? after
HH and MM following the INPUT of JCSPTASK.
Update: See Change 13.323.
Thanks to Paolo Carloni, Agip petroli SPA, ITALY.
Change 13.252 $AVERS SMF record variables SAVPAGES,SAVBLKS,SAVTBLKS are
VMACSAVR now created; these fields existed at the end of the SMF
Oct 27, 1995 record, but were not populated until this user went to
use them! The vendor, Software Engineering of America,
will fix the error in SAVRS V4.0A.33, and interim fix
number S40AF166 (a ZAP) is available from them now that
will populate these fields.
Thanks to Bill Hamilton, Scottish Widows, SCOTLAND.
Change 13.251 Support for STK's SILO SMF HSC View Subtype 8 record now
EXSTCHSV creates dataset STCHSV for every successful VIEW command
IMACSTC initiated by HSC.
VMACSTC
Oct 26, 1995
Thanks to Cheryl Howard, Wachovia Corporation, USA.
Thanks to Rodney L. Reisch, Wachovia Corporation, USA.
Change 13.250 DURATM was added to TSO/MON datasets by Change 13.089,
VMACTSOM but it was often missing! After the second statement
Oct 26, 1995 INTRVTM=TSOMDUR; insert DURATM=INTRVTM;
Thanks to Dan Squillace, SAS Institute Cary, USA.
Change 13.249 Support for MODEL204 Release 3.0 INCOMPATIBLY added five
IMACM204 fields to the SINCE record. Since there is no release
VMACM204 number in their record, you MUST update member IMACM204
Oct 25, 1995 in your USERID.SOURCLIB to use this new IMACM204, as it
now also defines macro _M204VER which tells MXG to read
Release 2 or Release 3 records (default is for Rel 3).
Thanks to Mark Wessel, Population Census & Surveys Office, ENGLAND.
Change 13.248 Summarization of IDMSTAS dataset from IDMS Perfmon into
ASUMIDMS PDB.ASUMIDS is provided by this user contribution, which
Oct 25, 1995 mimic's ASUMCICS algorithms to create response time and
resources by CV_NUM DC_USER DC_LTERM TASKCODE ADSODLGN.
Thanks to Richard S. Ralston, Whirlpool, USA.
Change 13.247 CICS/ESA 4.1 or later now contains the GMT offset, so MXG
VMAC110 can finally convert the STRTTIME/ENDTIME in CICSTRAN to
Oct 25, 1995 your local time of day. The INPUT of MCTMNTAD is changed
from &PIB.4. to &IB.4., and this line inserted:
MCTMNTAD=1.0485582324*MCTMNTAD;
to convert from CICS timer units to seconds. Then, in
the CICS/ESA 4.1 section for CICSTRAN and CICSEXCE, the
logic IF MCTMNTAD GT . THEN DO;
STRTTIME=STRTTIME+MCTMNTAD;
ENDTIME =ENDTIME +MCTMNTAD; END;
was inserted to add the (negative in USA) GMT offset.
NOTE: IF YOU HAVE TAILORED member EXCICTRN to convert the
CICSTRAN timestamps (as was described in Newsletter 27),
YOU MUST REMOVE OR REVISE YOUR conversion logic so that
it only converts non-4.1 records. For example, you could
use this logic for USA East Cost time zone in EXCICTRN:
IF MCTMNTAD=. THEN MCTMNTAD=.;
IF MCTMNTAD=. THEN DO;
STRTTIME=STRTTIME-HMS(5,0,0);
ENDTIME =ENDTIME -HMS(5,0,0);
END;
to force the 5-hour conversion for non-4.1 regions. The
first statement setting MCTMNTAD missing if it is missing
if the "compiler faker" statement which eliminates the
"uninitialized variable" message, so you could install
this logic in EXCICTRN even before you install MXG 13.07!
Variable MCTMNTAD was added to CICSTRAN by this change.
Thanks to Glenn Yee, Health & Welfare State of California, USA.
Change 13.246 Variable SETUP was added to _PDB26J2 macro so that that
IMACPDB variable will be kept in the PDB.JOBS dataset. It turns
Oct 25, 1995 out that the existence of a /*SETUP card causes JES2 to
put the job in logical hold until the operator releases
the job, but TYPRUN=HOLD is not set for these jobs. Now,
for observations with SETUP='Y' in PDB.JOBS, you can
identify these jobs that are delayed due to /*SETUP card.
Thanks to Andy Vick, Allied Dunbar Assurance, ENGLAND.
Change 13.245 In revision 4 of the type 6 SMF record, IBM truncated two
VMAC6 bytes of SMF6TU field, but in revision 5 data, the value
Oct 25, 1995 in SMF6TUL matches the length of SMF6TU, so the line that
was added by Change 13.162 is now changed to read:
IF REVISION EQ 04X THEN SMF6TUL=SMF6TUL-2;
I have not found IBM documentation of their change yet!
Thanks to Michael Moyer, Wyeth-Ayerst Labs, USA.
Change 13.244 Support for DB2 4.1.0 (COMPATIBLE) adds new fields to the
ANALDB2P statistics and accounting records, new subtypes and new
EXDB2ACG segments create three new datasets:
EXDB2PAT
EXDB2PST DB2ACCTG - Accounting - Group Buffer Pool usage
VMACDB2 DB2GBPAT - Global Buffer Pool Attributes
VMACDB2H DB2GBPST - Global Buffer Pool Interval Statistics
Oct 22, 1995
The major change is the support for DB2 Parallelism, with
multiple observations now created in DB2ACCT whenever
DB2 event (like a QUERY) is actually parallelized. The
degree of parallelism for a CPU bound task is constrained
by the number of CPU engines, while it is the structure
of your DB2 data (number of partitions, etc.) which
limits the degree of parallelism for an I/O bound task.
New member ASUMDB2P can be used to summarize these child
and parent pairs (and the sequential, or non-parallelized
DB2 events) so that there is only one observation for
each event, with variables PAIRNR (a created sequence
number token that was used to create ASUMDB2P from
DB2PARTY), NRCHILD (number of children records for this
event), and TOTELAPS (sum of elapsed time of all records
for this event, because ELAPSTM is the true elapsed wall
time of the parallel execution). Beware, sorting DB2ACCT
is required to create both the DB2PARTY detail dataset
and the output ASUMDB2P dataset, and DB2ACCT can be big!
The parent record has a non-zero QXMAXDEG, the maximum
number of parallel tasks, but there can be many more than
QXMAXDEG children records written, because tasks can be
parallelized in groups of different degrees. MXG creates
formatted variable DB2TSKTY to describe each observation
in DB2ACCT:
DB2TSKTY Description
C Child
P Parent
S Sequential (i.e., non-parallelized)
Complex queries in test data shows an event of three
groups, with 9, 10, and 8 children respectively, so 28
observations in DB2ACCT were created for that
parallelized query event. Almost all of the resources
(CPU, I/O) are recorded in the child record, but the
parent record contains important counts as well.
Extensive testing of DB2ACCT data was done in creation of
member ANALDB2P for parallel analysis, but the test data
thus far has not used Global Buffer Pools, so those new
datasets have not been data-tested. I have only casually
validated the DB2STATS with 4.1 data for reasonableness,
and VMAC102 has not yet been enhanced (I still await 4.1
trace test data). This note will be revised as testing
proceeds.
Change 13.243 MXG did not output observations to HURN49 if HU49XSNO is
VMACHURN zero (user logs on to Huron server, but did not access
Oct 20, 1995 another database before logging out). After the END;
after the DO I=1 TO HU49XSNO; insert:
IF HU49XSNO=0 THEN DO; %%INCLUDE SOURCLIB(EXHRN49); END;
Thanks to Colin Bowen, Old Mutual, SOUTH AFRICA.
Change 13.242 Correcting TYPE42DS STARTIME/ENDTIME from GMT to local in
VMAC42DS exit EXTY42DS using STARTIME=STARTIME-HMS(5,0,0) (to
EXTY42DS subtract 5 hours, for EST or CDT time zone) will not work
Oct 19, 1995 because the EXTY42DS member will be invoked once for each
dataset in a concatenation, causing STARTIME to be fine
in the 1st dataset, but then off by 5 hours in the 2nd,
off by 10 hours in the 3rd, etc. Instead, you must use
STARTIME=SMF42PTS-HMS(5,0,0); and
ENDTIME= SMF42PTE-HMS(5,0,0);
to force the correct GMT value. When you have installed
MXG 13.07 or later, you can revise your exit logic to use
IF S42JDGMO=. THEN DO;
STARTIME=SMF42PTS-HMS(5,0,0);
ENDTIME= SMF42PTE-HMS(5,0,0);
END:
because MXG 13.07 adds support for APAR OW16125 that adds
the actual GMT offset in S42JDGMO; with this revised code
your forcing code will only be executed prior to install
of that APAR. This is a documentation-only change; no
MXG code was actually changed.
Thanks to Diane Eppestine, Southwestern Bell, USA.
Change 13.241 New BUILDPDB exit IMACSPCK allows you to override the MXG
IMACSPCK decision "TO SPIN OR NOT TO SPIN" for specific cases.
BUILDPDB For example, VM Print Jobs, run on MVS, will create only
BUILDPD3 a type 6 print record. If you have tailored IMACSPIN so
BUILD005 that SPINCNT is greater than zero (as recommended), those
Oct 19, 1995 VM jobs will spin for SPINCNT days before finally being
output into the PDB. If you know that all VM Print jobs
have job names starting with RSCS, you can use this new
IMACSPCK member, by coding therein:
IF JOB=:'RSCS' THEN OKFLAG=1;
which will sent all RSCS jobs directly to the PDB instead
of waiting around in the SPIN library for SPINCNT days!
The default exit contains only comments.
Thanks to Norbert Korsche, OMV, AUSTRIA.
Change 13.240 Dataset ASUMDB2B was not created in the weekly PDB from
WEEKBLD the daily PDB's, but now it is.
WEEKBLDT
Oct 17, 1995
Thanks to Merlin Beeching, Generale de Banque SA, BELGIUM.
Change 13.239 S370FRBn informat fails under ASCII SAS if the floating
SASAFIX1 point value is unnormalized. See MXG Technical Note in
Oct 15, 1995 Newsletter TWENTY-NINE for discussion. This member is an
Nov 8, 1995 interim fix for MXG users executing under ASCII platforms
and currently contains two SAS programs that will create
the UWIS370F.DLL file for OS/2 SAS 6.10 or 6.11.
-Nov 8. The OCT 15 fix returned a large negative value if
the field was all hex zero, but that is now corrected,
and SASAFIX1 now provides fixes for SAS for OS/2 for both
6.10 and 6.11 and for SAS for Windows for 6.10.
Thanks to Ian Gibson, Queensland Transport, AUSTRALIA.
Change 13.238 MXG 13.06 only. Variable DELTATM is always missing. The
DIFFHMF semicolon is missing from each of the 6 LABEL statements,
Oct 14, 1995 also causing UNINITIALIZED warning message.
Change 13.237 Variable ZDATE is now created in one place, IMACZDAT, so
IMACZDAT that you can easily force ZDATE to a specific date for a
DOC rerun of a build job. Previously, you had to change the
Oct 14, 1995 value of ZDATE in a separate place for each infile that
you had to rerun. All of the associated statements to
describe ZDATE (LENGTH, LABEL, FORMAT) were moved into
the IMACZDAT member, and each statement ZDATE=TODAY();
or IF ZDATE=. THEN DO; do group were replaced with the
%INCLUDE or %%INCLUDE syntax for member IMACZDAT. There
were 113 members changed in response to this suggestion,
which will surly make someone very happy some day!
Thanks to Bruce Hewson, Alcoa, AUSTRALIA.
Change 13.236 The execution delay percentage variables in TYPE72GO used
VMAC7072 the workload manager sample count (VALDSAMP=R723MTVN;) as
Oct 14, 1995 denominator, but that statement is now replaced with:
VALDSAMP=PCTUSCUS+PCTDLTOT+PCTDLUNK;
because the workload manager counts both address spaces
and dispatchable units in the numerator (eg., an ASID may
have an SRB executing and a TCB waiting). This discovery
by Don was non-trivial and has been IBM-confirmed!
Thanks to Don Deese, (CPExpert), Computer Management Sciences, USA.
Change 13.235 Utility UDOCHECK (rarely needed, used to scan SAS source
UDOCHECK statements to locate DO ... END pairs when you have one
Oct 13, 1995 of those painful "MISSING END STATEMENT" syntax errors,
often caused in my experience because a comment swallowed
the END; statement) did not support DO WHILE / DO UNTILs.
Thanks to Wayne Bell, National General Insurance Company, USA.
Change 13.234 Variable NLDMSUBT should have been added to TYPE39_8 but
VMAC39 it wasn't until now.
Oct 13, 1995
Thanks to Wayne Bell, National General Insurance Company, USA.
Change 13.233 MXG 13.06. Support for Landmark for DB2 V 2 has now been
VMACTMDB tested with data which found undocumented alignment bytes
Oct 27, 1995 and changed header, causing STOPOVER. In addition, many
variables were not formatted that are now.
Thanks to Ken Updegraff, Hershey Chocolate, USA.
Change 13.232 The values of LPMINCnn, LPTARCnn, and LPMAXCnn variables
VMACAPAF are 10000 times too small. Change their informat from
Oct 17, 1995 &PIB.4.6 to &PIB.4.2 to correct. Additionally, variables
LPMINPnn, LPTARPnn, and LPMAXPnn are now created with the
Percentage allocation for each logical processor.
Thanks to John Suters, Telecom Australia, AUSTRALIA.
Change 13.231 The calculation of ARSPNET was sometimes incorrect. The
VMACNSPY statement IF NETRSPNO GE .5*TRANSNO AND TRANSNO GT 0
Oct 12, 1995 THEN ARSPNET=CRSPNET/TRANSNO;
should be ... THEN ARSPNET=CRSPNET/NETRSPNO;
Thanks to Alan Keebel, British Steel, ENGLAND.
Change 13.230 MXG 13.06 only. Change 13.181 caused INPUT STATEMENT
VMAC64 EXCEEDED RECORD error. The five lines at the end:
Oct 11, 1995 INPUT BEGCCHHX PIB4.
ENDCCHHX PIB4.
+18
@;
ALLOCCYL=ALOCCYL+ENDCCHHX-BEGCCHHX+65536;
must be replaced by this single corrected line:
ALLOCCYL=ALOCCYL+ENDCCHH-BEGCCHH+65536;
Thanks to Freddie Arie, Lone Star Gas, TEXAS.
Change 13.229 Change 12.195 was never made to WEEKBLDT, causing SORT
WEEKBLDT ORDER error. The correct _BYLIST for TAPEMNTS is:
Oct 11, 1995 MACRO _BYLIST SYSTEM SHIFT DEVICE TMNTTYPE TMNTTIME % .
Thanks to Neil Ervin, Huntington Services Company, USA.
Change 13.228 MVS/ESA V5 in Goal Mode only. Pre-Goal Mode, MXG only
EXTY72GO output TYPE72 when the PERFGRP had activity (to save DASD
FORMATS space, because IBM created segments for idle perfgroups),
VMAC7072 and so in Goal Mode, MXG only output TYPE72GO when the
Oct 10, 1995 SRVCLASS consumed resources (by testing, in EXTY72GO, for
non-zero CPUUNIT,SRBUNIT,IOUNIT,MSOUNIT or TRANS).
However, that test should only have been applied against
service classes for address spaces (as only ASIDs contain
resources). The result was that observations for trans
service classes that had no completions during the
interval were not output.
The test should have been qualified by R723TYPE, as it
describes which type of record we have. However, then I
discovered that R723TYPE was missing in some MVS/ESA 5.2
data, because the resource flag, R723CRCA, was not set,
and that had previously been a legitimate identifier that
an observation was an address space. As a result of this
discovery, I had to redefine the way R723TYPE is created:
IF RPRTCLAS EQ 'Y' THEN DO;
IF R723CRCA EQ 'Y' THEN R723TYPE='4';/*REPORT, ASID */
ELSE R723TYPE='5';/*REPORT, TRAN */
END;
ELSE IF R723CWMN GT 0 THEN R723TYPE='3';/*TRANSACTION*/
ELSE DO;
IF R723CRTX GT 0 THEN R723TYPE='1';/*ASID SC WITH RESP*/
ELSE R723TYPE='2';/*ASID SC NO RESP*/
END;
-Now, with the correct definition and setting R723TYPE
values, the logic in EXTY72GO could be changed so that
only observations that could contain resources are tested
to see if they should be output, using:
IF R723TYPE IN(1,2,4) THEN DO;
IF SUM(CPUUNITS,SRBUNITS,IOUNITS,MSOUNITS,TRAN)
GT 0 THEN OUTPUT _LTY72GO ;
END:
ELSE OUTPUT _LTY72GO;
With these changes, R723TYPE will be valid for all obs,
and only those resource-containing observations written
for Address Space Service Classes or Report Classes will
be output by the exit.
-Also discovered, the format names in member FORMATS for
$MGRMFTY and $MGRMFRT were reversed. $MGRMFTY describes
the type of record, while $MGRMFRT describes responses.
Thanks to Don Deese, (CPExpert), Computer Management Sciences, USA.
Change 13.227 The VAX Accounting Support was designed for execution on
VAXPDS ASCII platforms, which caused errors when executed under
Oct 10, 1995 MVS. The RECFM=N for ASCII must be RECFM=VB for MVS, so
I now have added a macro %%VMXGLRF in place of RECFM=N on
each INFILE statement, and defined VMXGLRF to set the
correct RECFM depending on where MXG is being executed.
Also, the broken vertical bar character ('6A'x onMVS)
used for concatenation was replaced with the exclamation
points ('5A'x on MVS), because the '6A'x character is not
correctly translated between ASCII and MVS systems.
Thanks to Frank d'Hoine, Nationale Bank van Belgie, BELGIUM
Change 13.226 Support for APAR OW16125 which adds GMT offset to type 42
VMAC42 subtype 6 (TYPE42DS dataset) observations. If the APAR
Oct 10, 1995 has been installed, new variable S42JDGMO will be non
missing, and MXG will have converted STARTIME and ENDTIME
from GMT to local time of day. If S42JDGMO is still
missing, the APAR is not installed, and STARTIME/ENDTIME
will still be on the GMT clock.
==========MXG Version 13.06, dated Oct 10, 1995, thru 13.225==========
Change 13.225 Change 13.065 can cause variables INTBTIME,INTETIME to
VMAC30 be really far from the truth, because the line inserted:
Oct 9, 1995 by that change:
GMTOFF30=GMTOFF30+SMF30IST-INTBTIME; /*GET LEAP SEC*/
must be deleted. In attempting to correct IBM's error, I
made the problem worse, by adding that heuristic that
worked with my test data, but failed badly with different
data. Removal of this line may still cause the problems
that were discussed in 13.065, but it is the safest
approach for "normal" sites.
Thanks to Don Deese, (CPExpert), Computer Management Sciences, USA.
Change 13.224 Support for Landmark TMON for DB2 Version 2 INCOMPATIBLY
EXTMDxxx changed their records, so MACRO _TMDVER is now defined in
IMACTMDB member IMACTMDB to tell MXG to process version 2 records.
VMACTMDB (The default in IMACTMDB expects Version 1 data records,
Oct 8, 1995 so you MUST tailor IMACTMDB to process Version 2.
The previous support created only TMDBDA,TMDBDB,TMDBDE,
and TMDBDR datasets. For version 2, datasets TMDBDA2,
TMDBDB2, and TMDBDE2 will have observations while their
un-suffixed counterparts will only have observations with
version 2, and TMDBDR no longer exists with version 2.
These new version 2 data sets are now created and will
have observations if their subtypes are found:
TMDBDBA, TMDBDAB, TMDBDAF, TMDBDBB, TMDBDDF, TMDBDBK
TMDBDBR, TMDBDW , TMDBDC.
In addition, these new datasets are defined and will have
observations, but only the record header is decoded for
these subtypes at this time:
TMDBBB , TMDBBC , TMDBBD , TMDBBE , TMDBBF , TMDBBG
TMDBBH , TMDBBI , TMDBBJ , TMDBBK , TMDBBL , TMDBBM
TMDBBT , TMDBDD
This combined support for both versions has not been
tested with data records, but the original code and the
Version 2 code contributed by Peter were separately
tested before I restructured and merged the code into
the single VMACTMDB member, and no error have surfaced.
Thanks to Peter Proppe, Bremer Lagerhaus Gesellschaft(BLG), GERMANY.
Thanks to Ken Updegraff, Jr., Hershey Chocolate, USA.
Change 13.223 Support for IDMS 12.01 Maintenance Level 9506 and later.
VMACIDMS CA INCOMPATIBLY changed their PERFMON SMF record. MXG
Oct 8, 1995 should have detected their change and deleted the changed
Nov 14, 1995 record and print a NOTE on the log, but their change
exposed an MXG logic error in detecting IDMS changes, and
MXG ABENDed with INPUT STATEMENT EXCEEDED RECORD LENGTH.
(In my defense, even CA IDMS Tech Support did not know
THAT there was a change, nor WHAT fields were changed
until I read this text to them!) Originally I thought
the change was introduced in IDMS 12.01, but it is their
maintenance level 9506 that contains the new data fields.
-Delete the final IF SKIP GT 0 THEN INPUT +SKIP (the one
after the END; /* END SUBTYPE 18 */ statement). This
will eliminate the STOPOVER condition with 12.01 data,
However, datasets IDMSARA, IDMSBUF, IDMSDBK and IDMSJRL
will still be wrong because field lengths were changed.
-To process ONLY 12.01 data, you could make these changes:
After PMHRTYPE=1, change INPUTs of
ARANAME $EBCDIC16. to ARANAME $EBCDIC27.
ARAFILE $EBCDIC16. to ARAFILE $EBCDIC27.
ARABUFR $EBCDIC16. to ARABUFR $EBCDIC18.
INPUT ARAFPERA &PIB.2. /* #FILES FOR AREA*/
and change SKIP=SKIP-184 to SKIP=SKIP-208;
After PMHRTYPE=2, change INPUTs of
BUFNAME $EBCDIC16. to BUFNAME $EBCDIC18.
and change SKIP=SKIP-120 to SKIP=SKIP-122;
After PMHRTYPE=6, change INPUTs of
JRLNAME $EBCDIC16. to JRLNAME $EBCDIC27.
and change SKIP=SKIP-120 to SKIP=SKIP-131;
After PMHRTYPE=18, change INPUTs of
DBKAREA $EBCDIC16. to DBKAREA $EBCDIC27.
DBKFILE $EBCDIC16. to DBKAREA $EBCDIC27.
and change SKIP=SKIP-120 to SKIP=SKIP-142;
-The actual change processes 12.01 and earlier data.
Thanks to Don Snively, E-Systems, USA.
Change 13.222 Support for COM-PLETE Version 4.6 has no change in their
VMACCOMP record format, but two errors in MXG were uncovered: if
Oct 7, 1995 you use a single SMF TYPE for your COM-PLETE record, MXG
failed to output the COMPULOF and COMPUCKP datasets. The
line with _IDCOMOF should test ULOGRTYP=3 (was 1), the
line with _IDCOMCK should test ULOGRTYP=2 (was also 1).
These two changes are required for either 4.5 or 4.6, but
only if you use a single SMF record type in the _IDCOMP
macro definition in IMACCOMP.
Thanks to Wayne Bell, National General Insurance, USA.
Change 13.221 Support for Tandem MEASURE processes their Process, CPU,
ADOCTAND and Disk data files. See member ADOCTAND for discussion
EXTANCPU of how to create, process, and use the three datasets:
EXTANDIS TANDCPU - Interval CPU activity statistics
EXTANPRO TANDDISK - Interval DISK activity statistics
IMACTAND TANDPROC - Interval PROCESS activity statistics
TYPETAND The Tandem data files contain ASCII character data with
VMACTAND standard mainframe binary values; this support has been
Oct 6, 1995 executed both under MVS and under OS/2 (and I discovered
Dec 2, 1995 that the FB data records must have RECFM=F on the INFILE
statement under ASCII versions of SAS, but must have
RECFM=FB under EBCDIC versions, necessitating creation of
the VMXGLRF macro to provide transparent support).
NOTE: MXG will process the "native" ASCII TANDEM data on
an ASCII platform (UNIX, OS/2, WINDOWS) as is. However,
if you want to process the TANDEM data on with an EBCDIC
platform (MVS, CMS, VSE), you must NOT translate the
TANDEM data from ASCII to EBCDIC - send the TANDEM data
to MVS as a BINARY file with no conversion and NOCRLF.
If your character variables are filled with @@@@@, you
are reading data that was converted from ASCII to EBCDIC,
and it is not just characters that are corrupted!
Thanks to Barry Pieper, Norwest, USA.
Change 13.220 Length of MXGCHAN variable CHTYPE increased to $4, and
ANALRMFR ELSE clauses removed, and a RETAIN statement deleted in
Oct 3, 1995 report enhancements.
Change 13.219 ISOGON Soft Audit Version 4.1 compatibly changed record
VMACSFTA format from FB to VB format (for better maintenance in
Oct 3, 1995 future versions), and added several new variables to
both the Program and the Module datasets, including the
Accounting Fields from the JOB card in the Program data.
Change 13.218 Support for the ABARS ABACKUP/ARECOVER FSR segment in the
EXHSMWWF HSM user SMF record creates new dataset HSMWWFSR with new
IMACHSM statistics (counts, timestamps/durations, space used).
VMACHSM The new segment is now put in the DFSMShsm smfid record
Oct 2, 1995 (which previously contained only the DSR and VSR
segments), but DFSMS 1.3 or APAR OW11391 will relocate
the new segment to the smfid+1 record (which contains
FSRs). MXG is coded to create it from either of the two
HSM records. The HSMWWFSR dataset is an event record,
written at the end of ABACKUP or ARECOVER, and thus there
should be no accumulated fields across SMF records, so
there is no reference to HSMWWFSR in member DIFFHSM.
Thanks to Michael E. Friske, Fidelity Savings, USA.
Change 13.217 APAR OW14717 for SMF type 42 subtype 2 INCOMPATIBLY
VMAC42 changes the value of SMF42CSS,SMF42SSA,SMF42SAP,SMF42SSU,
Oct 2, 1995 SMF42NSZ, and SMF42SPR (cache controller and non-volatile
storage sizes), but OW14717 should not be installed, as
IBM is replacing it with a better solution. A new APAR
number OW16039 will be issued to fix the same problem but
it sets a flag bit that MXG can use to determine whether
or not the APAR is installed. These APARs affect only
the 3990-6 in Enhanced Mode, and they change the value in
the record to contain kilo-bytes instead of bytes, so
the MXG change conditionally multiplies the six fields by
1024 if the new flag bit is on. Thus with this change
installed in MXG, MXG will be correct with or without the
APAR being installed.
Change 13.216 The value of MAXTIME printed in the Title of reports is
ANALPRTR wrong; the statement IF MAXTIME LT LATEST THEN DO; should
Sep 29, 1995 be IF MAXTIME GT LATEST THEN DO:
Thanks to Jim Ray, Branch Banking and Trust Company, USA.
Change 13.215 CA's IDMS Version 12.01 records cause INPUT STATEMENT
VMACIDMS EXCEEDED RECORD, but that failure should have been caught
Sep 28, 1995 by MXG; the circumvention is to delete the line
IF SKIP GT 0 THEN INPUT +SKIP @;
that is located at the end of member VMACIDMS, after the
END; /* END SUBTYPE 18 */ statement and before the
END; /* END DO _I_ TO SMFHNREC */ statement.
This correction will allow MXG to tolerate 12.01 records.
An update to this change will be made when the DSECTS for
the new version have been received and the MXG code
enhanced to pick up the new variables.
Thanks to Don Snivley, E-Systems, USA.
Change 13.214 The BGS I/O Monitor SMF record produces invalid records
VMACBGSI with MVS/ESA 5.2. MXG does not fail, but prints INVALID
Sep 28, 1995 TRIPLET messages on the log and deletes the records. BGS
alerted me and is investigating their error.
Change 13.213 Variables TSORESP TRIVRESP TSO2RESP TSO3RESP TSO4RESP in
RMFINTRV PDB.RMFINTRV are now FORMAT 7.3 (instead of 5.1), because
Sep 28, 1995 average trivial response is now often measured in tens of
milliseconds, which disappear when printed with the
shorter format.
Thanks to Chuck Hopf, MBNA, USA.
Change 13.212 DB2 stats dataset DB2STAT2 should never have been used in
DIFFDB2 building DB2STATS, as it contains only threshold values
VMACDB2 instead of interval resources used, so all references to
Sep 27, 1995 DB2STAT2 were removed in the building of DB2STATS in
member DIFFDB2. Now, DIFFDB2 creates DB2STATS from only
DB2STAT0 and DB2STAT1 data sets (as MXG did in 11.11!).
Fortunately, the inclusion of DB2STAT2 did not affect the
validity of DB2STATS dataset for its other variables.
-Tom also discovered that only the first buffer pool's
threshold's values were being OUTPUT to DB2STAT2 in its
creation in member VMACDB2. This correction was to move
the statement DIFFDB22=0 and the %INCLUDE of EXDB2ST2 to
be inside the DO group, and to insert statement
OFFQDBP=OFFQDBP+LENQDBP; after that %INCLUDE.
Thanks to Tom Parker, Hogan Systems, USA.
Change 13.211 MXG 13.02-MXG 13.05 only. IMF processing will cause an
TYPECIMS error 80-322 and 201-322 occur if you use member IMACCIMS
Sep 27, 1995 to define MACRO _LIMFTRN CIMSTRAN.CIMSTRAN %, because MXG
Change 13.089 incorrectly added _LIMFTRN to the DELETE
statement. Change DELETE _LIMFTRN CHAINED ; to read
DELETE CHAINED;
Thanks to Jim Wertenberger, Blue Cross Blue Shield of Ohio, USA.
Change 13.210 Labels for variables were clarified in TYPE70:
VMAC7072 NRCPUS ='NUMBER OF*CPUS AVAILABLE*TO THIS MVS'
Sep 27, 1995 PARTNCPU='TOTAL*NUMBER OF CPUS*IN THE CEC'
and in TYPE70PR:
LPARCPUS='NUMBER OF*CPUS IN*THIS LPAR'
Thanks to Angela Mulcahey, United Jersey Bank, USA.
Change 13.209 Comments describing use were enhanced, pointing out that
IMACFILE all SMF-processing programs use IMACFILE; if you want to
Sep 25, 1995 tailor IMACFILE for only one job (eg., BUILDPDB), then
you should put the tailored IMACFILE member in a special
PDS source library in the //SOURCLIB concatenation for
that one job, instead of putting it in the USERID.SOURCLI
tailoring library.
Thanks to Mr. Jan Beukeletrs, ANHYP NV, Belgium.
Change 13.208 INVALID DATA FOR DTL results if there is no value for the
VMACEREP last activity time. Insert ?? between DTL and &PD.4.
Sep 25, 1995 to suppress the invalid data message. This revision also
Oct 3, 1995 adds Machine Check Handler (MCH) record processing.
Thanks to Mr. Geiger, KKH, GERMANY.
Change 13.207 INVALID ARGUMENT error if there are more than 10 LCUIDs
ANALPATH associated with one CHPID, so the ARRAY was increased to
Sep 25, 1995 16, but the source of the error was that ANALPATH applied
Oct 2, 1995 IF &PRMTM; prime-time-only selection only to the TYPE74
dataset, while TYPE73 and TYPE78CF (from whence the error
came) had no shift selection (and the data that cause the
large number was across several IPLs with different I/O
configurations). Thus IF &PRMTM; was added logically to
the subsetting of TYPE73 and TYPE78CF datasets as well as
increasing the size of the ARRAY.
Thanks to Diane Eppestine, Southwestern Bell, USA.
Change 13.206 Variables ACTDLYTM, DSPDLYTM, and RESDLYTM are now added
VMAC30 to the TIME12.2 format, to print consistently with other
Sep 25, 1995 duration variables.
Thanks to Chuck Hopf, MBNA, USA.
Change 13.205 Variable HMF5BS29 was always zero, because it should not
DIFFHMF have been DIF()ed. Remove both lines in DIFFDB2 than
Sep 25, 1995 contain HMF5BS29.
Thanks to Shaheen Pervaiz, Acxion CDC, Inc, USA.
Change 13.204 MXG coding for Landmark TMON/CICS 1.3 was INCOMPATIBLY
TYPETMON changed so that TMON data could be processed under ASCII
Sep 25, 1995 and EBCDIC versions of SAS. You MUST change your JCL for
the DDname of MONICICS from RECFM=U BLKSIZE=32760 to be
RECFM=VB LRECL=32756 BLKSIZE=32760 with this change.
(I regret the inconvenience, but this was the only way to
support LANDMARK data processing under OS2/UNIX/WINDOWS
and is the way TYPETMON should have been coded. Since VB
processing is faster than U processing, you may actually
see a faster run time! And even if you don't read this
notice, the error message that you now get will tell you
that you have either used RECFM=U in place of RECFM=VB,
or that you are trying to read compressed data without
having installed the EXITMON6 decompression exit!).
The code changes were to delete the two lines that INPUT
LENMONI1 and LENMONI2, to change all occurrences of
LENMONI1 to MONILEN, and to replace the INPUT of ENDDATE
as YYMMDD6. with YY &NUM.2. MO &NUM.2. DD &NUM.2. and
then use IF YY GT 0 THEN ENDDATE=MDY(MO,DD,YY);
Note that for processing TMON 1.3 data under ASCII SAS,
you must use
FILENAME MONICICS 'C:\...'
RECFM=S370VB LRECL=32752 BLKSIZE=32756;
Thanks to Ian Gibson, Queensland Transport Department, AUSTRALIA.
Change 13.203 MXG execution under ASCII only. Landmark 8.1 format MXG
TYPEMON8 code was not updated for ASCII execution, causing wrong
Sep 25, 1995 values and notes on the log. Change all occurrences of
"RB8." to "&RB.8.", and replace ENDDATE as described in
Change 13.203. There is no error under MVS execution.
Thanks to Ian Gibson, Queensland Transport Department, AUSTRALIA.
Change 13.202 Variable DURATM was created, equal to INTERVAL, to be
VMAC23 consistent with SAS/CPE desires.
Sep 22, 1995
Thanks to Mitch McKenna, Independent Consultant, Australia.
Change 13.201 Support for Omegamon for MVS/ESA V400 adds these new
VMACEPMV twenty-three variables:
Sep 22, 1995 SM180APS SM180ARC SM180ASC SM180CFR SM180CSS SM180EFR
SM180HSP SM180IOC SM180OLS SM180OM1 SM180OM2 SM180QUI
SM180RGN SM180RGP SM180SCN SM180SCP SM180SCX SM180SPS
SM180SVF SM180VIO SM180WKS SM180WLN SM180XME
Thanks to Frank Altrichter, Bell Atlantic, USA.
Change 13.200 Variables SYSNAME and SYSPLEX were not in PDB.RMFINTRV,
RMFINTRV although Change 13.172 supposedly made the addition; the
Sep 22, 1995 variables must be added to the ID statement that precedes
OUTPUT OUT=RMF70D1 .... MXG processing currently assumes
that each of your SYSTEM ids are unique within a SYSPLEX;
if that is not true, I may have to change the sort order
of all of the RMF datasets from SYSTEM STARTIME to
SYSPLEX SYSNAME SYSTEM STARTIME, but I will defer that
change until truly required (and I have test data!).
Thanks to Norbert Korsche, OMV AG, AUSTRIA.
Change 13.199 SAP variable STICODE in CICS journal records should be
IMACICSA INPUT as $EBCDIC4. (it was &PIB.4.), as it is a transact
Sep 22, 1995 code (similar to STCTCODE).
Thanks to Norbert Korsche, OMV AG, AUSTRIA.
Change 13.198 Support for 3590 tape drives was incomplete, as variable
ANALTAPE TAPE3590 was not added to PDB.JOBS & PDB.STEPS datasets.
BUILDPDB -IMACPDB must be updated. Variable TAPE3590 must be added
BUILDPD3 to macro _PDB30_4 and to macro _MAXSTP, and then the PROC
BUILD005 MEANS OUTPUT statement required the X9 to be changed to
ChangeSS X10, and the SUM= statement required the addition of X10
IMACPDB after the X9. Note that if IMACPDB exists in your
VMAC30 USERID.SOURCLIB, you must retrofit your tailoring in that
Sep 22, 1995 member, starting with this new IMACPDB member.
-Although not required, the TAPExxxx variables in LENGTH
statements in BUILDPDB, BUILDPD3 and BUILD005 were taken
out, as the _MAXSTP macro reference already contains the
TAPExxxx variables, and their removal avoids confusion.
-It was also noted that none of the EXCPxxxx or IOTMxxxx
variables were kept in TYPE30_6, so member VMAC30 was
updated to add _IO30IO to the KEEP list for TYPE30_6 to
be consistent with other type 30 datasets.
-ANALTAPE was updated to report 3590 tapes separately
-Finally, my notes on what I have to do for a new tape
device (text of Change 9.152 in CHANGESS) were revised
so I do it right the first time the next time!
Thanks to Norbert Korsche. OMV AG, AUSTRIA.
Change 13.197 By changing all occurrences of SORTDSNS to DSNAMES, the
VMXGVTOF PROC SORT DATA=DSNAMES .... that precedes the %DO group
Sep 22, 1995 can be eliminated, saving an extra pass of the data.
Thanks to Graeme Yeandle, British Telecom, ENGLAND.
Change 13.196 Protection for future version changes was not correct for
VMACHMF subtype 4, 5, 8, and 9, as the subtractor should be 26,
Sep 22, 1995 16, 54, and 64 respectively. (The segment lengths do not
include their own length.) However, there was no error
with the current version's records.
Thanks to Shaheen Pervaiz, Acxiom CDC, Inc, USA.
Change 13.195 Variables BATRSPRO BASCRUID BASPCCHN BARTNDTA BAVOLOWN
VMACTLMS were not in the KEEP list, nor were they in the LABEL
Sep 22, 1995 statement, but now they are.
Thanks to Alex Torben Nielsen, TeleDanmark EDB, DENMARK.
Change 13.194 Variables IMSID (IMS System ID) was added to the KEEP
VMACCIMS list for datasets CIMSDBDS and CIMSDB2 to ease in reports
Sep 22, 1995 by system.
Change 13.193 Variables QWSBIID,ISEQ,OTH1,OTH2,SBNA,SCF,SRND,SRNW,SRSW
VMACDB2 were added by Change 13.139 but those names were already
DIFFDB2 in use, and where they were DIF()ed in DIFFDB2, wrong
Sep 21, 1995 counts were created. Fortunately, these variables record
generally unimportant counts of activity by IFC, and they
were added only to eliminate a nuisance message from MXG,
but now they were renamed to QWSYxxxx to avoid conflict.
This change could not be made with a global change, so if
this is really of concern, you will need the new version.
Thanks to Tom Parker, Hogan Systems, USA.
Change 13.192 INVALID SECOND ARGUMENT IN FUNCTION SUBSTR occurs in the
VMAC102 processing of DB2 Trace IFCIDs 21 or 44. The following
Sep 21, 1995 changes must be made twice; once after MACRO _C102021 and
once after MACRO _C102044.
Find the following code:
DO I= 1 TO 27 BY 3;
IF I LT 27 THEN ....
ELSE ....
....
IF I=27 AND J=7 THEN J=20;
....
Change it to read:
DO I= 1 TO 19 BY 3;
IF I LT 19 THEN ....
ELSE ....
....
IF I=19 AND J=13 THEN J=20;
....
Thanks to Mitch McKenna, SAS Europe, GERMANY
Thanks to Mealin Beecking, Generale de Banque NV/SA, BELGIUM.
Change 13.191 Building the $DB2DBID and $DB2OBID formats may still fail
ANALDB2R when there are zero obs in T102S105 or T102S107, due to
Sep 21, 1995 insufficiently robust logic.
Find IF FIRST.DBID THEN DO; . Replicate this DO group.
In the first DO group, change the IF FIRST.DBID THEN DO;
to IF FIRST.DBID AND LAST.DBID THEN DO; . In the second
DO group, change the IF FIRST.DBID THEN DO; to
ELSE IF FIRST.DBID THEN DO; . In the first DO group,
insert OUTPUT; after LASTNAME=DBNAME;
Find IF FIRST.OBID THEN DO; . Replicate this DO group.
In the first DO group, change the IF FIRST.OBID THEN DO;
to IF FIRST.OBID AND LAST.OBID THEN DO; . In the second
DO group, change the IF FIRST.OBID THEN DO; to
ELSE IF FIRST.OBID THEN DO; . In the first DO group,
insert OUTPUT; after LASTOAME=OBNAME;
Thanks to ????, Union Bank of Switzerland, SWITZERLAND.
Thanks to Werner Schellenbert, SAS Switzerland, SWITZERLAND.
Change 13.190 The format of variable UOWTIME in all datasets is changed
ANALDB2C to DATETIME25.6, because the previous DATETIME21.2 format
TYPEMOND caused the PROC MEANS in ANALDB2C to collapse what were
TYPEMON8 separate events into one output observation (because the
TYPETMON variable UOWTIME is in the BY list, and PROC MEANS, like
VMACCIMS most other procedures, uses the formatted value to build
VMACDB2 its output observation).
VMACDB2H The ANALDB2C error could be corrected with the addition
VMACOMCI of "INCODE=FORMAT UOWTIME DATETIME25.6;," to both
VMAC116 of the %VMXGSUM invocations and by changing the FORMAT
VMAC123 statement, which would let ANALDB2C use date that was
Sep 21, 1995 created prior to this change, but that circumvention will
cause an extra pass of CICS and DB2 data by ANALDB2C.
So the permanent correction was to change the format in
all of the members that create variable UOWTIME, and only
the existing FORMAT statement was changed in ANALDB2C.
Thanks to H. Thomas Lowin, ICG Informationssysteme, GERMANY.
Change 13.189 INVALID DATA FOR AFSTTIME in type 91 BatchPipes/MVS SMF
VMAC91 record because of a reserved field. After the INPUT of
Sep 21, 1995 SMF91IWB &PIB.4. and the INPUT of SMF91OWB &PIB.4.,
insert +4 (to skip over the reserved field).
Thanks to Siegfried Trantes, IDG Gmbh, GERMANY.
Change 13.188 Variable WRBUFUSE (write buffers used) was added to KEEP
VMAC50 list for dataset TYPE50, and is now input by changing the
Sep 20, 1995 @39+OFFSMF +4 to read @39+OFFSMF WRBUF &PIB.4. (for the
subtype 01 (channel-to-channel) record).
Thanks to Earl Berg, Bank of America, USA.
Change 13.187 ASMTAPES revision MAINTLEV 6 now replaces prior version.
ASMTAPES MXG 13.05 ASMTAPES may stop writing allocation records,
Sep 29, 1995 although mount records continue to be written. The SRB
that we schedule fails if the job in allocation (or in
allocation pending) is swapped out. We continue to retry
the SRB, but if an internal maximum count is exceeded, we
(erroneously, I now realize!) shut down the allocation
monitor and stop writing records. This section of the
monitor has been redesigned, now that we realize why the
SRB routine times out. In addition, this revision
-Adds 'DEBUG' mode, which can be invoked via Operator
Modify Command "F MXGTMNT,DEBUG=YES" (default at startup
is DEBUG=NO, so that debugging messages TMNT009I/011I
will not be written by default).
-Corrects incorrect job and step information due to
allocation recovery and step changes
-Enhanced code to get DDNAME when a device is initially
found in allocation recovery, but later sampled during
execution. The DDNAME is unavailable during allocation
recovery, and so records written only for allocation
recovery will not have a DDNAME; once the job goes from
allocation recovery to execution, a subsequent monitor
sample will now pick up the DDNAME.
Change 13.186 Support for year 2000 for TLMS records was added. Twelve
VMACTLMS fields that contain dates with century value will now be
YEAR2000 converted to four digit values (eg., the 0100001 value of
Sep 20, 1995 01Jan2000 will now be converted to 2000001). The logic
is X=FLOOR(X/100000)*100+1900+X; for each of these X:
BAPURCH BADESTDT BACLNDT BACERTDT BAVMOVED BAVKEEPD
BAVEXPDT BAVSCRDT BADKEEPD BADEXPDT BACDATE BAIDATE
TLMS was not previously recognized as needing conversion,
because these twelve variables are simply numbers and are
not converted to SAS date values (and my research in the
YEAR2000 member only addressed MXG variables that are
date values).
Thanks to Rey Marquez, General Accident Insurance, USA.
Change 13.185 INPUT STATEMENT EXCEEDED RECORD LENGTH for type 92 SMF
VMAC92 because the INPUT of SMF92PPL should have been &PIB.2.
Sep 20, 1995 instead of the &PIB.4. that was coded.
Thanks to Diane Eppestine, Southwestern Bell, USA.
Change 13.184 Variable SMF22SNV should be labeled SUBSYSTEM*NVS*STATUS.
VMAC22 New variable SMF22PNV should be created by inserting
Sep 20, 1995 SMF22PNV $CHAR1. immediately after the INPUT of
SMF22SNV, and SMF22PNV must be added to the KEEP= list,
the $HEX2. list, and the $NOTRAN. list, after SMF22SNV.
Thanks to Dean Brown, Pacific Bell, USA.
Change 13.183 MXG 13.01-MXG 13.05 only. RACF type 80, ACF2 user SMF and
IMACJBCK DB2 type 101 observations were not output if job name was
VMAC80 hex zeroes.
VMAC80A For consistency, Change 13.076 added IMACJBCK to all SMF
VMACDB2 processing members (IMACJBCK allows selection of records
VMACACF2 by job name), but it contained a default test of
Sep 1, 1995 IF JOB GE ' '; but if the variable JOB has
Sep 20, 1995 nulls, this addition causes the record to be deleted!
Nov 30, 1995 It now turns out that RACF can write records with nulls
for job name - "For RACINIT records for batch jobs,
SMF80JBN can be zero", and those records were deleted.
Also, DB2 records for Distributed Threads for non-DB2
requestors contain nulls for JOB, causing observations in
DB2ACCT and DB2ACCTP datasets to be deleted.
The change was to eliminate that default test in IMACJBCK
so it only contains comments about how it can be used!
There was no change to VMAC80, VMAC80A, nor VMACDB2, but
they are listed here for the alert of the problem.
Thanks to Joe Faska, Depository Trust, USA.
Thanks to Tom Parker, Hogan Systems, USA.
Change 13.182 SNS/TCPaccess Version 2.1.0 added on new variable F20AERR
VMACILKA to dataset ILKAST20 compatibly.
Sep 1, 1995
Thanks to Joe Schwartz, CIGNA, USA.
Change 13.181 APAR OW11142 adds new variables with compression stats:
VMAC64 SMF64CCS SMF64CDS SMF64CMP SMF64CSS SMF64DTK SMF64EF
Sep 1, 1995 SMF64SDS SMF64TRK
In addition, variable ALLOCCYL is now calculated to give
the allocated size of the VSAM component.
Thanks to Siegfried Trantes, IDG Informationsvararbeitung, GERMANY.
Change 13.180 TYPE42DS and TYPE42SR variable RESPTIME was found to be
VMAC42 greater than the sum of connect, pend, disconnect and CU
Sep 1, 1995 queue; IBM development confirmed that the IOS queue time
is included in RESPTIME but not separately recorded, so
AVGIOQMS=RESPTIME-(AVGCONMS+AVGPNDMS+AVGDISMS+AVGCUQMS);
was inserted after AVGCUQMS=128*AVGCUQMS; in two places,
AVGQIOMS was added to the KEEP= for both datasets.
In addition, these "millisecond" variables RESPTIME
AVGIOQMS AVGCONMS AVGPNDMS AVGDISMS and AVGCUQMS are now
multiplied by 1000 so their values are actually in
milliseconds. I know this will affect those of you that
have started to use the TYPE42DS data, but consistency
with their labels and with counterpart variables in the
TYPE74 dataset justify this annoyance to those pioneers
who have already found this valuable data source.
Thanks to Bruce Sloss, PNC Bank, USA.
Change 13.179 RACFTYPE=34 caused "SKIPPED SEGMENT" message on the log,
VMAC80A but had no impact on created datasets. To eliminate the
Aug 30, 1995 diagnostic, copy the WHEN (55) DO; block to after the
WHEN (33) block, and then change the 55 to 34.
Thanks to Joe Faska, Depository Trust, USA.
Change 13.178 MXG 13.05 only. Variable NDMTIME is missing because the
VMACNDM test IF DATEYYYY GT 80000 AND .. should have been changed
Aug 30, 1995 to IF DATEYYYY GT 0 AND .... (the 80000 test was for a
julian date after 1980, but DATEYYYY was change to a SAS
date by Change 13.158, and current value is only 13,000).
Thanks to Chuck Hopf, MBNA, USA.
Change 13.177 Variable VELOCITY is added to TYPE72 & TYPE72GO datasets
VMAC7072 (for both Compatibility and Goal Mode measurement). The
Aug 30, 1995 equation is VELOCITY=CPUUSESM/SUM(CPUUSESM,TOTDLYSM);
for dataset TYPE72 and the equation is
VELOCITY=PCTUSCUS/SUM(PCTUSCUS,PCTDLTOT); for goal mode.
Thanks to Don Deese, (CPExpert), Computer Management Sciences, USA.
Thanks to Dave Crandall, Farmers Insurance, USA.
Change 13.176 Support for Software Engineering of America's TRMS (Total
EXTRMS01 Report Management Solution) user SMF record adds datasets
EXTRMS02 TRMS01 - Report Accumulation
EXTRMS03 TRMS02 - Report Deletion
EXTRMS04 TRMS03 - Distribution Bundle
IMACTRMS TRMS04 - Distribution Print (Demand)
TYPETRMS with the identity of the print-causing job, duration, and
VMACTRMS counts of lines, pages, etc.
Aug 30, 1995
Thanks to John Rivera, PKS Information Services, Inc, USA.
Change 13.175 If you build your weekly PDB on tape, running the TREND
WEEKBLDT code can cause lots of tape mounts. It may be wiser to
Aug 28, 1995 build the entire PDB on tape first, then use PROC COPY
with a SELECT statement to create a pseudo-PDB on DASD
with only the datasets needed for Trending.
Thanks to Chuck Hopf, MBNA, USA.
Change 13.174 MXG 13.05 only. Assembly of ASMTAPES fails because you
ASMTAPES cannot continue ASM comments with X in column 72. Find
Aug 28, 1995 MAINTLEV, remove X's from column 72, put asterisk in col
1 (except for the final MAINTLEV EQU 5, which was ok.)
This was a stupid error; I changed the comments and then
failed to reassemble the program.
Thanks to Chuck Hopf, MBNA, USA.
Change 13.173 OMEGAMON CICS V300 SMF Subtype 200 subsubtype 4 caused
VMACOMCI INPUT STATEMENT EXCEEDED RECORD LENGTH due to MXG error.
Aug 24, 1995 Insert between EEDRMFS and EEDTSIO these lines:
EEDRMFS &PIB.1.
@;
IF SUBTYPE=200 THEN INPUT +3 @;
INPUT
EEDTSIO &PIB.4.
and change the subsequent IF SUBTYPE=200 THEN LOC=LOC+1;
to read IF SUBTYPE=200 THEN LOC=LOC+4;
Thanks to F. Pulles, Compuzorg B.V., THE NETHERLANDS.
==========MXG Version 13.05, dated Aug 21, 1995, thru 13.172==========
Change 13.172 Variables SYSPLEX and SYSNAME were added to all of the
RMFINTRV RMF/CMF datasets built from type 70-79 records (they had
VMAC7072 been inconsistently kept) and were added to RMFINTRV data
VMAC71 set as well, so as to fully analyze sysplex data from
VMAC73 multiple sysplexes.
VMAC74
VMAC75
VMAC76
VMAC77
VMAC78
VMAC79
Aug 23, 1995
Thanks to Don Deese, (CPExpert), Computer Management Sciences, USA.
Change 13.171 Support for MVS/ESA 5.2.2 was thought to be contained in
none MXG 13.02, as there appeared to be no new record changes
Aug 22, 1995 in 5.2.2. However, that was not true, and once IBM got
Jan 11, 1996 the new SMF manual to me, there were noted several new
data. Fortunatly, the 5.2.2 changes were compatible so
that none of your existing datasets failed with MXG 13.02
and 5.2.2 records (except for Open Edition/MVS type 92
data). Change 13.156 added the support for type 88 data,
Change 13.162 fixed an MXG error in type 6 record that
occurred at a 5.2 site (though the error was due to PSF
and has happened with earlier MVS), Change 13.310 added
fields to type 30, and Change 3.311 dealt with the type
92 so to completely capture all of the new 5.2.2 fields
from all records, MXG 13.13 is required.
Change 13.170 Support for additional subtypes from Landmark TMON/MVS:
EXTMVMLG subtypes CS, IX, ML, and XI are now decoded and these new
EXTMVMLL datasets are created from ML and XI records:
EXTMVMLP Dataset Description
EXTMVMLV TMVSMLG PR/SM Global Segment
EXTMVXIM TMVSMLL PR/SM Logical Partition
EXTMVXIP TMVSMLP PR/SM Product Segment
EXTMVXIS TMVSMLV PR/SM Virtual Processor
FORMATS TMVSXIM XCF Member
IMACTMVS TMVSXIP XCF Path
TYPETMVS TMVSXIS XCF System
VMACTMVS while existing datasets TMVSCS and TMVSIX are now
Aug 21, 1995 populated with variables.
-Additional decoding of several existing segments:
Subtype CI, variables CIJFM and CIJGM are not listed in
either the online documentation (Ver 1.3, Mod 9405):
A: ADVANCED FUNCTIONS
4: DICTIONARY RECORD DIRECTORY
nor in the 'Report Writer' 8: Data Elements document,
but are in member TMVDSECT (with the same OFFSET=54).
Both variables are generally marked as comments.
-The TRANSLATE function was inserted after each input
for some variables in the subtypes 'NQ' and 'PS'.
Thanks to Peter Proppe, Bremer Lagerhaus Gesellschaft(BLG), GERMANY.
Thanks to Rod Fernandes, Albert Heijn B.V., NETHERLANDS.
Change 13.169 Support for OMEGAMON/MVS Version 300 incompatibly changed
VMACEPMV the I/O section, causing INPUT STATEMENT EXCEEDED RECORD.
Aug 21, 1995 The new I/O section logic now looks like this:
IF SM180VRS GE '03' THEN DO; /* OMEGAMAON 300+ */
INPUT @SM180OIO
SM180DVT $EBCDIC1.
SM180DNR $CHAR3.
SM180DEV $EBCDIC4.
SM180ACT &PIB.4.
SM180QCT &PIB.4.
SM180VOL $EBCDIC6.
@;
FORMAT SM180DNR $HEX6. ;
END;
ELSE DO; ... original code ... END;
and variables SM180DNR SMF180DVT were added to KEEP= list
for dataset EPMVEPIO.
Thanks to Frank Altrichter, Bell Atlantic, USA.
Change 13.168 VM/ESA 2.2 UNEXPECTED/INVALID CONTROL RECORD FOUND was
VMACVMXA encountered with IPARMLF1=873Fx and IPARMSG1=MSG2=03Fx,
Aug 22, 1995 causing me to reopen and revise Change 13.126 after it
was printed in Newsletter 28. However, the site's data
is invalid (for example, the 1.14 record had domain 3Fx,
but there are only 10 domains, and the record length of
the 1.14 record is 34, but there are only 28 bytes until
the next 1.14 record). The VM data was sent to MVS with
FTP using MODE S (Stream) with no TYPE E (EBCDIC) instead
of MODE B (Block) TYPE E, and this caused data values to
to be changed in transmission ('09'x was changed to 'F3'x
and '1C'x was changed to '22'x by TCP/IP!). Now that I
know the cause of the bad values, I might not have made
the revisions in Change 13.126, but they make the support
more robust and are thus worthwhile to keep.
Thanks to Connie Mak, Avon, USA.
Change 13.167 This work is incomplete. MVS/ESA 5.2 added several new
ASMRMFV tables that need to be added to ASMRMFV and then decoded
VMACRMFV in VMACRMFV, but I have no test data for validation. As
Aug 21, 1995 test data is provided, the support will be coded and
tested. Nothing was changed in ASMRMFV in this change;
VMACRMFV was updated with new code blocks and new 5.2
variables were added to existing datasets, but more work
is required for the new segments.
Change 13.166 Support for 3590 Tape device adds variables EXCP3590 and
FORMATS IOTM3590 and TAPE3590 to TYPE434, TYPE30_V, TYPE30_4,
IMAC30IO TYPE30_5, TYPE30_6, TYPE40, PDB.JOBS, and PDB.STEPS data
VMAC434 sets. The DEVCLASS/DEVTYPE value for this new device is
VMAC30 '8083'x; in member FORMATS, only the formats MGCMFDD and
VMAC40 $MGDEVTY use those IBM values; the formats MGERPDV (EREP)
VMACEXC2 and MGZAREN/MGZARTQ (ZARA) have their own device type
VMACUCB value and I have guessed that the value '43'x will be the
Aug 19, 1995 3590 value, but I will confirm with IBM and Altai.
Changes 13.165 thru 13.001 (and 12.328 thru 12.307) were printed in
MXG Newsletter TWENTY-EIGHT (and are contained in member CHANGESS).
Change 13.165 Deaccumulation of HMF datasets TYPEHMF4, TYPEHMF5,
DIFFHMF TYPEHMF6, TYPEHMF7, TYPEHMF8, and TYPEHMF9 is required.
TYPEHMF Member DIFFHMF is automatically invoked now in member
VMACHMF TYPEHMF, but if you add HMF record processing to your PDB
Aug 11, 1995 you must also add %INCLUDE SOURCLIB(DIFFHMF); in the
Aug 20, 1995 member EXPDBOUT to accomplish the deaccumulation.
Some $EBCDIC variables were changed to $CHAR with $HEX
format. Test data has determined what should/should not
be deaccumulated because it is not noted in the vendor's
documentation, but some fields were always zero and thus
you should verify with your own data. The vendor states
that variables HMF8CS06 thru HMF8CS12 in TYPEHMF8 data
set are invalid and should not be used; the problem has
been open for over a year and is not resolved yet.
Thanks to Shaheen Pervaiz, Acxiom CDC Inc, USA.
Change 13.164 Support for EREP (SYS1.LOGREC) records adds 19 datasets:
EXERPCRW EREPCRW - Channel Report Word
EXERPDDR EREPDDR - Dynamic Device Reconfiguration
EXERPEOD EREPEOD - System Ending /EOD/Normal/Abnormal
EXERPETR EREPETR - External Timer Reference Record
EXERPHDR EREPHDR - LOGREC Header Record
EXERPIOS EREPIOS - Input/Output Supervisor Recovery
EXERPIPL EREPIPL - System IPL
EXERPLMI EREPLMI - Link Maintenance Information
EXERPLRS EREPLRS - Lost Record Summary
EXERPMCH EREPMCH - Machine Check Handler
EXERPMDR EREPMDR - Miscellaneous Data Record
EXERPMIH EREPMIH - Missing Interrupt Handler
EXERPOBL EREPOBL - Outboard Long Records
EXERPOBR EREPOBR - Outboard Short Records
EXERPSDW EREPSDW - Software System Diagnostic Area
EXERPSIM EREPSIM - DASD Service Information Message
EXERPSLH EREPSLH - Subchannel Logout Handler
EXERPSYM EREPSYM - Symptom Programming Failure
EXERPTIM EREPTIM - Logrec Time Stamp Record
IMACEREP Either SYS1.LOGREC or EREP records can be processed with
JCLEREP this support, even though the data records are not quite
TYPEEREP identical. All records have been tested except for the
VMACEREP ETR, SIM, IOS, and MCH events, which did not occur in my
Aug 20, 1995 test data.
Thanks to K.U. Geiger, KKH, GERMANY.
Change 13.163 MAINTLEV 6 does not yet exist, although it was listed in
ASMTAPES this change text in the printed MXG Newsletter 28. It is
VMACTMNT still in development testing. The ASMTAPES on this 13.05
Aug 12, 1995 is MAINTLEV 5, which seems to solve the stall problem
Aug 19, 1995 (the monitor would simply stop, using no CPU and writing
no records) by better handling the SRB. You may see some
"TMNT" messages printed on the job log of the MXGTMNT job
(TMNT009I SRB Timeout PURGEDQ attempts, TMNT011I SRB was
PURGED) that are really diagnostics to indicate how often
the SRB we scheduled in the tape job's address space did
not respond. Previously we sometimes scheduled a second
SRB before the first ended; now if the first is not back
we first purge it and then start another SRB. We almost
always eventually get the information back from the SRB
routine, so that the data in the SMF record is usually
good even when SRBs are purged. However, the READTIME
and other timestamp variables may be invalid if the job
ended before we got the SRB response, so I have added ??
modifiers to the SMFSTAMP fields in VMACTMNT so as to
avoid printing of a hex dump if you should by chance get
an invalid READTIME in a record. The "TMNT" messages so
far occur mostly right on or after the hour, and then for
hours there are none, and we are using these diagnostics
to continue to enhance what will be MAINTLEV 6. In that
iteration, the printing of those "TMNT" messages will be
optional, and the default will be not to print them.
The problem that is still in development testing occurs
very infrequently, but we still occasionally find the
PROGRAM=IEFIIC or the incorrect job name will be put in
the SMF record. This seems to be isolated to jobs that
had some tapes allocated, went into allocation recovery
for additional drives, received WAIT,NOHOLD response, had
its drives stolen away, and later was reallocated to the
same device. This fix may require additional records to
be created and additional logic in VMACTMNT to completely
resolve these rare instances. Statistically, the records
created by MXGTMNT still are quite valid.
Please contact Merrill Consultants (or your overseas SAS
office) if you would like to be shipped MAINTLEV 6 when
it is ready (probably not before October, 1995).
A note about CA/LEGENT's MIM product and NOHOLD.
The sites which have had problems with the open problem
above have been MIM sites, and their MIM administrator
had specified that MIM should reply NOHOLD. In the MIM
manual, there is a statement that NOHOLD is required by
MVS 4.3, but the MIM Product Manager has confirmed that
that statement is false; either HOLD or NOHOLD can be
used with any version of MVS. It is true that MIM does
strongly recommend that you use NOHOLD instead of HOLD,
because MIM favors throughput over job importance.
In a MIM environment, when a job gets WAIT,HOLD response,
that job will block any other allocations by any other
job on any other system from getting any tape drive in
that tape group, until it completes its allocation. Thus
HOLD response favors the completion of the job that has
already been initiated ahead of any other job.
By specifying WAIT,NOHOLD, those drives that have already
been allocated are freed, and the job goes to the bottom
of allocation queue, so that maybe another job on this or
another system could now run. This favors other jobs.
I think I would rather finish what I have started first
(especially if I have a smart job scheduling system that
is based on service objectives - I can presume there that
the job that was started was more important than the not
started job), but you must understand the difference and
make your own decision as to which senario is appropriate
for your site's job scheduling system, and not just
arbitrarily accept MIM's NOHOLD recommendation.
======Early MXG Version 13.05, dated Aug 14, 1995, thru 13.162======
Change 13.162 PSF 4.0 type 6 SMF record INPUT STATEMENT EXCEEDED RECORD
VMAC6 LENGTH error because IBM did not document that SMF6TUL
Aug 11, 1995 includes its own two bytes, causing MXG to try to read 2
more bytes than are in the record. After the @; after
the INPUT of SMF6TUL, insert this line:
SMF6TUL=SMF6TUL-2;
Thanks to Diane Eppestine, Southwestern Bell, USA.
Change 13.161 Variable MQMSSSID was added to all MQM datasets; it had
VMAC115 been input separately as SM115SSI or SM116SSI, but it was
VMAC116 not kept. Labelled MQMSSSID='MQM*SUBSYSTEM*ID', it is
Aug 9, 1995 needed to associate MQM records.
Thanks to Pat Quinnette, Principal Mutual Life Insurance Co., USA.
Change 13.160 RMF Reports show MVS/XA for MVS/ESA version 3 because two
ANALRMFR tests GE "4" should have been GE "3". The adjacent MVS
Aug 8, 1995 release number (3.1.3) was printed correctly.
Thanks to Victor Chacon, NYNEX, USA.
Change 13.159 DB2 Statistics Detail report, page 6 had 4 values wrong
ANALDB2R and four labels were clarified, and the SHIFT= parameter
DIFFDB2 did not work quite right.
Aug 8, 1995 Buffers Allocated (VPOOL or HPOOL) were negative because
their variables, QBxTVPL and QBxTHPL, were wrongly built
in data set DB2STATS; those variables were DIF()ed in
member DIFFDB2, but they are endpoint values, instead of
accumulated, a fact not documented by IBM; only non-zero
data can validate whether to DIF() or not to DIF()!
Delete all lines in DIFFDB2 with TVPL or THPL suffix.
-The values for GET/PAGE SYNC READ RANDOM was incorrectly
calculated.
Replace RANDOM with RANDOMP for the random page calcs,
replace RANDOM with RANDOMR for the random read calcs,
and recalculate RATIO=RANDOMP/RANDOMR.
-The value for D PRF PAGES READ was wrong because the
variable RANDOM was printed instead of RATIO.
-Labels for the four rations now read:
RANDOM PAGES PER READ, SEQ PREFETCH PAGES PER READ,
LIST PREFETCH PAGES PER READ, DYN PREF PAGES PER READ.
-If you used SHIFT=P in report PMSTA01, you would not just
get a report for all Prime time in DB2STATS, but got
multiple reports, one short and before prime, and one
that covered almost all of the requested shift (and that
report was accurate for the timeframe it reported). The
error was in using ENDTIME instead of STRTTIME in the
recalculation of SHIFT. After %MACRO PMSTA01, move the
STRTTIME=ENDTIME-DURATM; statement to immediately before
the %IF %LENGTH(&SHIFT) GT 0 %THEN %DO; statement, then
three lines later, change DATETIME = ENDTIME to read
DATETIME=STRTTIME;
Thanks to Neil Ervin, Huntington Service Company, USA.
Thanks to Cal Cooke, Huntington Service Company, USA.
Thanks to Clark Jennings, Reynolds Metal, USA.
Change 13.158 Support for the Year2000, phase one:
DOC -All variables with DATETIME or DATE formats were changed
Aug 7, 1995 to expand the printed width to display the year in four
print positions:
Was Now Is So it will print as
DATE7. DATE9. 08Aug1995
DATETIME16. DATETIME18. 08Aug1995:20:58:20
DATETIME19.2 DATETIME21.2 08Aug1995:20:58:20.99
DATETIME20.3 DATETIME22.3 08Aug1995:20:58:20.999
DATETIME23.6 DATETIME25.6 08Aug1995:20:58:20.999999
Note that only the printed value is changed; all MXG date
variables are stored in 4 bytes, and all of the datetime
variables are stored in 8, so MXG has always internally
supported the year 2000. Those variables that had an
undefined length (DATE. or DATETIME. format) were changed
to one of the above formats. Over 10,000 instances of
these formats were changed in several hundred members.
-The preliminary list of products that do not support the
year 2000 was expanded in member YEAR2000; the earlier
list overlooked some products whose dates were created
using the MDY(MO,DA,YY) function. I believe the list of
products now is very close to complete.
-Those instances of MDY(MO,DA,YY) wherein the actual FIELD
that was input was a PD4 containing 'CYYMMDDF'x are now
converted, using this logic:
CC=FLOOR(FIELD/1000000);
YY=FLOOR((FIELD-1000000*CC)/10000);
MO=FLOOR((FIELD-1000000*CC-10000*YY)/100);
DA=FIELD-1000000*CC-10000*YY-100*MO;
YYYY=1900+YY+C*100;
DATE=MDY(MO,DA,YYYY);
for these types of data values:
Hex Date
0991231F 12/31/1999
1000101F 01/01/2000
1001231F 12/31/2000
1010101F 01/01/2001
The use of YYYY instead of YY signifies that MXG has put
the code in place to support the century bit; of course,
this will be 2000 in 2000 only if the vendor sets that
century bit; otherwise it will look to be the year 1900!
-Those instances of MDY(MO,DA,YY) wherein the YY variable
was input as PIB2. can support either the Century bit or
a four digit year:
Field Decimal Hex Year
YY 99 0063x 1999
CYY 100 0064x 2000
CYY 142 0216x 2042
YYYY 1999 05CFx 1999
YYYY 2042 07FAx 2042
For these fields, this new logic is now used, as it will
correctly resolve the year whether the vendor sets the
century bit or sets a four digit year:
IF 0 LE YY LT 1960 THEN YYYY=1900+YY;
ELSE YYYY=YY;
DATE=MDY(MO,DA,YYYY);
Again, the YYYY confirms the MXG four digit year support.
Note that the MDY() function fails if the YY argument is
100, so this new logic was required.
About 20 members were protected by this additional code.
-All instances of DATEJUL() function, which does not yet
support the century bit, must be revised. Values input
with PD4 format could contain a century bit (0cyydddF0,
or they could contain a four digit year:
Hex Date
0099365F 12/31/1999
1999365F 12/31/1999
0100001F 01/01/2000
2000001F 01/01/2000
0100365F 12/31/2000
2000365F 12/31/2000
0101001F 01/01/2001
2001001F 01/01/2001
Fortunately, the following logic can be used for these
PD4 DATEJUL fields, as it will protect for either the
century bit or a four digit year:
INPUT PD4FIELD ?? PD4. @;
CC=FLOOR(PD4FIELD/100000);
YY=FLOOR((PD4FIELD-100000*CC)/1000);
DDD=MOD(PD4FIELD,1000);
IF 0 LT DDD LE 366 THEN DO;
IF 0 LE CC LE 2 THEN YYYYDDD=DDD+1000*(CC*100+YY+1900);
ELSE IF CC GE 19 THEN YYYYDDD=DDD+1000*(CC*100+YY);
ELSE YYYYDDD=.;
END;
ELSE YYYYDDD=.;
IF YYYYDDD GT 0 THEN DATEYYYY=DATEJUL(YYYYDDD);
ELSE DATEYYYY=.;
Here, the YYYYDDD confirms the MXG support for year 2000.
Eighty-two members contained 340 uses of DATEJUL() that
were modified by the addition of the above logic.
Note: the PD4 logic printed in Newsletter TWENTY-EIGHT
was incomplete; the above code is the tested code that is
now implemented in MXG 13.05.
Change 13.157 Cosmetic cleanup. Members EXECDALY, EXECEMAC, EXECPDB,
EXECDALY and EXECTEST were deleted; they had been replaced by the
EXECEMAC REXXxxxx members of the same suffixes in 1989, were kept
EXECPDB only for transition, and now are no longer needed (and
EXECTEST the EX prefix is now used only for dataset exit names).
Aug 7, 1995
Change 13.156 Support for MVS/ESA 5.2 System Logger Data SMF type 88
EXTY88 creates this new dataset:
IMAC88 TYPE88 - System Logger Data
TYPE88 These interval records record system logger activity and
VMAC88 system wide logger exceptions. IBM comments that if the
Aug 5, 1995 variable SMF88SIB (bytes deleted before the data was
migrated to DASD) is high, and variable SMF88SAB (bytes
deleted after data migration to DASD) is low, then the
system logger is successfully using the coupling facility
structure to avoid DASD input/output. MXG creates the
variable SMF88RAT as SMF88SIB divided by SMF88SAB.
This code has not been tested with data records. When I
have data records, I intend to produce reports similar to
IBM's sample program IXGRPT1 (in SAMPLIB).
Change 13.155 Support for OpenMVS File System Activity SMF type 92 adds
EXTY9201 six datasets:
EXTY9202 TYPE9201 - OMVS File System Mount
EXTY9204 TYPE9202 - OMVS File System Quiesce/Suspend
EXTY9205 TYPE9204 - OMVS File System UnQuiesce/Resume
EXTY9210 TYPE9205 - OMVS File System UnMount
EXTY9211 TYPE9210 - OMVS File System Open
IMAC92 TYPE9211 - OMVS File System Close
TYPE92 The only change in VMAC30 was to make labels consistent.
VMAC92 I used the pre-existing MXG variable names from the type
Aug 5, 1995 30 record where appropriate. This table shows what is
and what is not consistent between 30s and 92s:
MXG Type 30 Type 92 Description
Variable field field
OMVSAPG n/a SMF92APG Parent Process Group ID
OMVSASG n/a SMF92ASG Parent Session ID
OMVSOPG SMF30OPG SMF92PGD Process Group ID
OMVSOPI SMF30OPI SMF92PID Process ID
OMVSOPP SMF30OPP SMF92API Parent Process ID
OMVSOSI SMF30OSI SMF92SSD Process Session ID
OMVSOUG SMF30OUG SMF92GID Process User Group ID
OMVSOUI SMF30OUI SMF92UID Process User ID
JOB SMF30JBN SMF92JBN Job name
READTIME SMF30RST SMF92RST Read-In/Logon Datetime
STEPNAME SMF30STM SMF92STM Step Name
STEPNR SMF30STN n/a Step Number
SUBSTEP SMF30SSN n/a Sub Step Number
The SMF Manual (GC28-1457-01) has a good introduction to
OMVS accounting records in Chapter 8 (but the schematic
does not show when the 92s are written). This new type
92 record looks very useful in measuring Unix-under-MVS
I/O activity, something not available in other Unix!
This code has not been tested with data; I hope to get
test data with both OMVS 30s and 92s for testing and
intend to write a technical note on OMVS at that time.
Thanks to Lee Borgman, Boeing, USA.
Change 13.154 If CICINTRV was executed outside of BUILDPDB, it failed
CICINTRV because the macros defined in IMACCICS were not included.
Aug 4, 1995 (BUILDPDB includes IMACCICS before invoking CICINTRV.)
Add %INCLUDE SOURCLIB(IMACCICS); at beginning of code.
See Change 14.188.
Thanks to Chuck Hopf, MBNA, USA.
Change 13.153 NPM 1.5 creates subtype 18x record with invalid data for
VMAC28 variables LNADDCTD and/or LNADDCTT, causing INVALID
Aug 3, 1995 ARGUMENT TO FUNCTION INPUT message and a hex record dump
is printed on the SAS log. Those fields did not exist in
release 1.5, but when they are non-zero, they cause the
error, because MXG expected if the LENAOF=136, it was
because the two new fields were in your record. There
is no impact on the MXG datasets, but the message and the
printed dump can be avoided by changing the test:
IF LENAOF GE 136 THEN DO; to read:
IF LENAOF GE 136 AND NPMPVN GE 15X THEN DO;
Thanks to ???, ???, Hong Kong.
Change 13.152 User-written invocations of VMXGSUM must be examined, due
VMXGSUM to a just-discovered incompatibility introduced in Change
Aug 3, 1995 12.084 (MXG 12.02 and later). Even though you used the
MXG examples, if your %VMXGSUM uses an OUTCODE= parameter
to re-calculate the DATETIME= variable-name, your results
may be seriously wrong. If your code looks like this:
DATETIME=STRTTIME,
INTERVAL=MONTH,
SUMBY =APPLID DATETIME TRANNAME,
OUTCODE =STRTTIME=DATETIME; DROP DATETIME; ,
it must be replaced with this:
DATETIME=STRTTIME,
INTERVAL=MONTH,
SUMBY =APPLID DATETIME TRANNAME,
ID =STRTTIME,
Prior to 12.084, the DATETIME= variable-name was forced
to LENGTH 8, but when the new ID=variable-name parameter
was added to replace the recalculation in the OUTCODE=
parameter, the automatic forcing of LENGTH 8 was dropped.
All MXG invocations of %VMXGSUM were changed, but I did
not realize nor document this exposure if you did not
make the change.
(Eliminating OUTCODE= eliminates a data step; also, since
12.084+ keeps only the needed variables, the variable
might not even exist to have its length changed.)
When a datetimestamp value is stored in length 4, it can
be truncated by up to 255 seconds, which can cause the
summarization value to be on the prior day, week, or
month!
No code was changed by this documentation-only change.
Thanks to Ahn Ngo, Crowley Maritime Corporation, USA.
Change 13.151 -HP PCS variables NONEW NOKILL and NOSHORT are characters,
VMACHPAI not numerics. Add all three variable names to the $8
VMACHPSU FORMAT statement in VMACHPUX, and add NONEW and NOKILL to
VMACHPUX the $8 FORMAT statement in VMACHPAI and VMACHPUX to fix.
VMACHPUX -Comparing CPU time in the HPUXGLOB and HPUXAPPL datasets
Aug 2, 1995 shows expected comparison (HPUXAPPL records over 90% of
the global CPU time. However, HPUXPROC shows more CPU
time than was recorded in the HPUXGLOB, probably because
the CPU time IN HPUXPROC is in seconds (rather than tenth
of seconds), and it appears that fractional CPU seconds
are written as 1 second. The site has "Short Lived On",
causing records for tasks running less than one second,
which may contribute to the discrepancy. HP is being
contacted concerning the CPU time resolution in HPUXPROC.
Thanks to Dan Sidorick, Smith Klein Beecham, USA.
Change 13.150 MXG 13.04 tape only. Deleted line will cause ABEND.
ASMTAPES After label TIMRPOST, following the WTO statement and
Jul 31, 1995 before the PURGEDQ statement, insert:
L R8,PRGERMTR
MAINTLEV was changed from 4 to 5 to reflect this change.
========MXG Version 13.04, dated Jul 31, 1995, thru 13.149======
Change 13.149 Support for Kodak's ACXIS software for Kodak Optical Disk
ADOCAXC (by Data/Ware Development), Version 2.1.0, thanks to this
EXAXC01X significant user contribution creates ten new datasets.
EXAXC02X AXC01X - AXCIS DATA CREATION SUBTYPE 01X'
EXAXC02I AXC02X - AXCIS INDEX EXTRACTION SUBTYPE 02X'
EXAXC03X AXC02XIS - AXCIS INDEX EXTRACTION SEGMENT XIS'
EXAXC04X AXC03X - AXCIS LOCAL INDEX UPDATE SUBTYPE 03X'
EXAXC05X AXC04X - AXCIS GLOBAL INDEX UPDATE SUBTYPE 04X'
EXAXC06X AXC05X - AXCIS ARCHIVAL SUBTYPE 05X'
EXAXC07X AXC06X - AXCIS USER STATISTICS SUBTYPE 06X'
EXAXC08X AXC07X - AXCIS RETRIEVAL ACTIVITY SUBTYPE 07X'
EXAXC09X AXC08X - AXCIS FAILED RETRIEVAL ACT. SUBTYPE 08X'
IMACAXC AXC09X - AXCIS UNAUTH. ACCESS ATTEMPT SUBTYPE 09X'
TYPEAXC
VMACAXC
Jul 30, 1995
Thanks to Stephen Bell, Westfalisch Lippischen Sparkassen, GERMANY.
Change 13.148 I have never actually published standards for MXG code.
VMACXXXX Many users have contributed code that works, but I often
Jul 30, 1995 have to spend some time revising their code to my format,
because I have never formalized exactly how to write MXG
code. Member VMACXXXX and the other ....XXXX members are
good examples of the basic code structure, but I will now
begin to include specific coding standards that I try to
us, some cosmetic, some functional, for now in VMACXXXX,
but likely to be moved to a different-named member in a
subsequent iteration.
Change 13.147 Support for LEGENT's HyperBuf SMF Record adds new dataset
FORMATS TYPEHBUF, thanks to this user contribution. The original
EXTYHBUF code was tested with Beta Release 4.02 of HyperBuf,
IMACHBUF although I changed some of the code (see change 13.148)
TYPEHBUF and only syntax checked afterwards, as the test data file
VMACHBUF had not yet arrived for validation.
Jul 30, 1995
Thanks to Joseph G. Ogurchak, Westfield Companies, USA.
Change 13.146 Five variables in NDM Connect Direct NDMMC dataset
VMACNDM (NDMTNAME,NDMFNAME,NDMANAME,NDMNRECS,NEMNBLKS) and four
Jul 30, 1995 variables in NDMWO (NDMTNAME,NDMFNAME,NDMANAME,NDMTSKNO)
were wrong because NDMUID was expanded from 8 to 64 bytes
in these records. The MXG test:
(NDMRTYPE='MC' AND LENGTH=168) must be changed to read
(NDMRTYPE='MC' AND (LENGTH=168 OR LENGTH=214)) to fix.
In addition, the actual change now inputs and keeps new
variable NDMWODAT, the undocumented text string at the
end of the WO record. (I suspect my DSECTS are old!).
Thanks to ???, Alcatel, FRANCE.
Change 13.145 Support for Packet/Main SMF record creates 11 datasets
EXPKMNBI thanks to this significant user contribution:
EXPKMNBL PKMNCONN - Connect to TIC
EXPKMNCO PKMNDISC - Disconnect from Packet Network
EXPKMNDI PKMNBIND - Bind Completed
EXPKMNER PKMNUNBN - Unbind processed for user
EXPKMNFE PKMNERR - Error Events
EXPKMNFL PKMNSTUP - Startup of PKTMN Program
EXPKMNFS PKMNSHUT - Shutdown of PKTMN Program
EXPKMNSH PKMNBLOG - Bind Image Log (for Session Data Logging)
EXPKMNST PKMNFLOG - Outbound FMD Logical Message (for ")
EXPKMNUN PKMNFTST - File Transfer Start
IMACPKMN PKMNFTEN - File Transfer End
TYPEPKMN The first five datasets have been validated with data.
VMACPKMN
Jul 29, 1995
Thanks to Mr. Loewenthal, Zonussi Elettrodomestici, ITALY.
Change 13.144 Support for NetCompress SMF record creates six datasets,
DIFFNTCP thanks to this significant user contribution:
EXNTCPAP NTCPINAP - Application Interval - type 03
EXNTCPOP NTCPINSY - System Interval - type 02
EXNTCPRT NTCPSESS - Device Session Start - type 05
EXNTCPSE NTCPSESE - Device Session End - type 06
EXNTCPSS NTCPSTRT - System Startup - type 01
EXNTCPSY NTCPSTOP - System Stop - type 04
EXNTCPOP Since the NTCPINSY dataset contains accumulated fields,
IMACNTCP member DIFFNTCP is automatically included in TYPENTCP,
TYPENTCP Note if you tailor BUILDPDB to add NTCP processing, you
VMACNTCP must also add %INCLUDE SOURCLIB(DIFFNTCP) in EXPDBOUT.
Jul 29, 1995 However, since the documentation does not describe which
fields are in fact accumulated versus end point values,
I had to deduce from the test data which fields to DIF(),
so please validate closely that I got them all!
Thanks to Mr. Loewenthal, Zonussi Elettrodomestici, ITALY.
Change 13.143 TSO/MON 6.1 only, variables TRIVTM NTRIVTM and LONGTM are
VMACTSOM were 38400 times too small; replace the three TU4. with
Jul 29, 1995 &PIB.4. and the values will be correct. (When I validated
the 6.1 changes last fall with test data, I only looked
the counts of transactions, and failed to perform a
reasonableness check on the response time values.)
Thanks to Yingha Mui, Canada Life, CANADA.
Change 13.142 Variables LCSLCBR and LETHCBR were misspelled as the 2nd
VMAC28 occurrence of LSCLCBS and LETHCBS, and the second label
Jul 28, 1995 for LCSLXBYT was deleted.
Change 13.141 Cosmetic changes. Duplicate variable names occurred in
VMACHPUX KEEP= statements, causing no error, but as they really
VMACIAM serve only to confuse, the duplications were removed.
VMACOMCI The MEMBER(VARIABLE) that were changed in each member:
VMACXAM VMACHPUX(EXPORTIM), VMACIAM(IAMAVGRL), VMACOMCI(EAMAXT),
VMAC110 VMACXAM(SLORESP1,SLORESP2), VMAC110(LDGDPSCR),
VMAC7072 VMAC7072(CPUWAITD,CPUWAITE,CPUWAITF), VMAC99(PHSPS).
Jul 27, 1995 (Freddie's diagnostic program, which reads MXG source to
look for inconsistencies, found these duplications.)
Thanks to Freddie Arie, Lone Star Gas, TEXAS.
Change 13.140 DFSORT Release 13 only. Variable ICEINPDS was repeated
VMAC16 four times in the KEEP=, the LABEL, and the INPUT
Jul 27, 1995 statements. The 2nd thru 4th occurrences of ICEINPDS
should have been ICEINNDS, ICEOUTDS and ICEOFLDS.
Thanks to Freddie Arie, Lone Star Gas, TEXAS.
Change 13.139 Almost cosmetic; MXG previously kept only the first 9
DIFFDB2 IFCs and Destinations in DB2STAT0, and printed a message
VMACDB2 ("This is not usually important") if additional segments
Jul 27, 1995 were found in your record. Since this caused a few calls
I elected to increase the kept IFCs and Destinations to
14, since that appears to be the default count. These
counts of activity by IFC and Destination are rarely
needed, but now they exist. See Change 12.279.
Change 13.138 Using TYPEMON8 to process Landmark TMON/CICS Version 1.3
TYPEMON8 will cause the "IT APPEARS YOU ARE TRYING TO PROCESS ..."
Jul 26, 1995 message about decompression exit. That text now reminds
you that TYPETMON is required for Version 1.3 records.
Thanks to Jerry Boggess, County of Sacramento, USA.
Change 13.137 The MICS VM Data Transmission Program's VB output file is
VMACVMXA already supported in MXG VM/ESA member VMACVMXA, by using
Jul 26, 1995 the _VMINPUT macro instead of the _MWINPUT macro.
Only comments were changed by this Change.
Thanks to Ian Davies, Workers' Compensation Board of Alberta, CANADA.
Change 13.136 Variables HMF5BUS and HMF5TIME were not in the KEEP= list
VMACHMF for dataset TYPEHMF5, and they were also left out of the
Jul 26, 1995 LABEL statement in change 13.038.
Thanks to Shaheen Pervaiz, Acxiom CDC Inc, USA.
Change 13.135 This revision to the MXG Tape Mount and Tape Allocation
ASMTAPES monitor provides SRB reliability enhancements and adds
VMACTMNT new diagnostics. This is MAINTLEV 4 of the monitor and
Jul 25, 1995 should resolve several erratic problems with the SRB
Jul 29, 1995 routine (including, possibly, the occasional stall where
the monitor stops writing SMF records). This revision
creates a separate mount record for PROGRAM=IEFIIC, which
is now known to be the program name seen when a job step
is delayed in allocation recovery, and I intend to see if
there is any way to match up this IEFIIC record to its
related job, but I have to get the monitor into test site
hands to create the test data to examine first! Because
these PROGRAM=IEFIIC records represent allocation rather
than mount delays, I chose to delete them in VMACTMNT so
your statistics will not be affected. Sites wishing to
examine these records can remove that test from VMACTMNT.
Thanks to Tom Parker, Hogan Systems, USA.
Thanks to Jim Purdie, BancOne, USA.
Thanks to David Childers, Lowe's, USA.
Thanks to Shaheen Pervaiz, TransUnion, USA.
Thanks to Tracy Blackstone, Kaiser Permanente, USA.
Change 13.134 Date/time selection failed, especially crossing midnight.
ANALRMFR Find and delete each of the 44 lines containing either
Jul 24, 1995 IF TIMEPART("&BEGTIME"DT) LE TIMEPART(STARTIME);
or
IF TIMEPART("&ENDTIME"DT) GE TIMEPART(STARTIME);
Thanks to Norbert Korsche, OMV AG, AUSTRIA.
Change 13.133 Candle's Supersession Release 147 causes MXG message that
VMACNAF "More account fields were encountered ..." is corrected
Jul 24, 1995 by Candle PTF QLV1372.
Thanks to Mr. Schott, Rehau AGu. Co., GERMANY.
Change 13.132 Variable DURATM was neither calculated nor kept in the
VMAC28 NPMVSVGB data set; it was added to the KEEP= list and
Jul 24, 1995 created in the 'VGB' segment processing.
Thanks to Carl Sommer, SAS Institute Cary, USA.
Change 13.131 Several corrections to HSM FSR SMF record processing:
VMACHSM -Variable FSRTBYTW was mis-calculated. It should be:
Jul 24, 1995 FSRTBYTW=SUM(FSRTBYBK,FSRTBYTW);
-The DO I=1 to FSRNENT1 loop should have included all of
the SUM functions and the FSRTVOLS logic, with the
%INCLUDE SOURCLIB(EXHSMFST) and END relocated to just
before the DO on FSRNENT2. Before this change, MXG only
output the counts for the last tape when this FSR had
multiple tapes, and always had TPTYPE='INPUT'.
-Variable FSRTVOLS was added to LENGTH statement as $30.
Thanks to Wanda Prather, Johns Hopkins University APL, USA.
Change 13.130 Internet addresses FTPCLHST FTPCRHST F20LHST and F20RHST
VMACILKA were numeric variables in hex; with this change they are
Jul 24, 1995 character variables of length 15 with numbers and decimal
points between them. Inputting each of the four bytes as
individually using PIB1. and then concatenate the PUT
function of each byte, using:
ADDR=PUT(B1,3.)!!'.'!!PUT(B2,3.)!!'.'!!PUT(B3,3.)!!'.'
PUT(B4,3.));
Note added Aug 1996: Data from before and after this
change cannot be combined, as these four variables are
numeric before and character after. If you must combine
(i.e., year to date), then you must convert these four
variables in your existing accumulation from numeric to
character, using this logic:
MACRO _CONVERT
B1=FLOOR(X/65536);
B2=FLOOR((X-B1*65536)/4096);
B3=FLOOR((X-B1*65536-B2*4096)/256);
B4=MOD(X,256);
ADDR=PUT(B1,3.)!!'.'!!PUT(B2,3.)!!'.'!!PUT(B3,3.)!!'.'
PUT(B4,3.));
%
DATA NEWACCUM; SET OLDACCUM;
DROP FTPCLHST FTPCRHST F20LHST F20RHST;
X=FTPCLHST; _CONVERT; XTPCLHST=ADDR;
X=FTPCRHST; _CONVERT; XTPCRHST=ADDR;
X=F20LHST; _CONVERT; X20LHST =ADDR;
X=F20RHST; _CONVERT; X20RHST =ADDR;
DATA OLDACCUM; SET NEWACCUM;
DROP XTPCLHST XTPCRHST X20LHST X20RHST;
FTPCLHST=XTPCLHST;
FTPCRHST=XTPCRHST;
F20LHST =X20LHST ;
F20RHST =X20RHST ;
Thanks to Mohammad Mourad, AT&T, USA.
Change 13.129 DB2 Statistics Report again, but only individual fields!
ANALDB2R -PMSTA01/PMSTA02 labels for Buffer Pools BP0 and BP1 for
DIFFDB2 GENERAL and READ ACTIVITY were printed as BP1 and BP2.
VMACDB2 In ANALDB2R find GENERAL and make the following change,
Jul 24, 1995 and then find READ ACTIVITY and make the same change:
Jul 25, 1995 %IF &B EQ 1 %OR &B EQ 2 %THEN %DO;
Jul 26, 1995 @1 "BP&B GENERAL "
Jul 27, 1995 %END;
must be replaced with:
%IF &B EQ 1 %THEN %DO;
@1 "BP0 GENERAL "
%END;
%ELSE %IF &B EQ 2 %THEN %DO;
@1 "BP1 GENERAL "
%END;
-The LOG RBA field is printed as a decimal when it is a
hex address, and must be stored as length 8.
In ANALDB2R, find this line with QWSDLR and add HEX12.:
+2 'LOG RBA :' QWSDLR HEX12. ;
In VMACDB2 add variable QWSDLR to the LENGTH statement
to make it length 8 instead of the default length of 4,
and add a line QWSDLR HEX12. to the FORMAT statement.
(I chose HEX12 for an 8-byte field because RBA is a 24bit
address, and because HEX16 produces wrong values - see
SAS Technical Note).
In DIFFDB2, remove the line QWSDLR=DIF(QWSDLR);
-The second of the two lines with this label is wrong:
DBD REQUESTS NOT IN EDM
Change that 2nd label to DBD REQUESTS/DBD NOT IN EDM
The original calculation was always correct.
-The value for REQUESTS FOR PT SECTIONS in the Statistics
summary is incorrect. Find the line reading
+3 'REQUESTS FOR PT SECTIONS '
and change the next line to QISEKTG instead of QISEKT.
Now, find the previous SUM= statement and add QISEKTG.
-Statistics Detail report, page 4, right half of page
(AUTHORIZATION ATTEMPTS thru LOOK AHEAD MOUNT SUCCEED):
The /MINUTE /THREAD /COMMIT columns contain wrong values
(the left hand COL1xxxx variables are printed instead of
the right hand COL2xxxx variables). You must find each
of the report labels for the right hand column, and for
those that are followed by lines with COL1PMIN COL1PTHD.
and COL1PCOM, change the COL1xxxx to COL2xxxx. Twenty-one
sets of three lines were changed.
-Statistics Detail report, page 6, right half of page,
(GET PAGES thru RANDOM GET PAGE RESULTS), same error as
page 4 - file labels and change COL1xxxx to COL2xxxx.
Thanks to Neil Ervin, Huntington Service Company, USA.
Thanks to Cal Cooke, Huntington Service Company, USA.
Thanks to Dean Berry, Farmland Industries, Inc, USA.
Change 13.128 Support for APAR OW13246 (PSF/MVS Release 2.2.0) adds new
VMAC6 variables SMF6BYTE (bytes transmitted) & SMF6TARG (target
Jul 23, 1995 address) to dataset TYPE6, for sites exploiting the new
PSF/MVS Download feature. Note that these new variables
are not automatically carried into the PDB.PRINT dataset
with BUILDPDB, but you can tailor IMACPDB easily to add
them if you need them.
Change 13.127 This change is for documentation of an incompatibility
FORMATS with SAS Version 5; there was no actual change. Beginning
Jul 23, 1995 with MXG 13.01, member FORMATS cannot be executed under
SAS version 5 or SAS version 6.06, nor can it be executed
if the output LIBRARY is a version 5 format library. The
syntax OTHER=(| $HEX2. |) added by Change 13.061 did not
exist in those archaic versions of SAS. However, if you
delete all of the lines in member FORMATS with that
OTHER= syntax, the formats program will execute without
error, even on those old versions.
Change 13.126 This change was revised after Newsletter 28 was printed.
VMACVMXA VM/ESA MONWRITE records written both by Sterling's
Jul 23, 1995 VM/Monitor and by IBMs MONWRITE have changed in VM/ESA
Jul 24, 1995 2.2. MXG calculated the number of control records using
Aug 22, 1995 NRCRRECS=(IPRMMSG2-IPRMMSG2+1)/12; (even though there is
only one control record per block), and verified that the
record was a control record by testing IPARMLF1=8709x,
but the IPARML control block has changed. Sterling writes
records with IPRMMSG1=IPRMMSG2=028x that have MWTCAREA of
all zeroes (so this is not a valid control record, altho
028x is the correct offset to where MWTCAREA should be!),
and IBM writes records with MSG1=MSG2=3Fx that do contain
a valid MWTCAREA, but 3Fx is the wrong offset to it!
(These heuristics were needed in early VM/XA records, but
now that the IPARML has changed, they can and must be
removed with these changes:
-The block IF MOD(IPARMLF1,10000X) NE 8709 ... to END;
was deleted.
-The calculation NRCRRECS=(IPRMMSG2-IPRMMSG1+1)/12; and
the following INPUT @IPRMMSG1+1 @; was replaced with:
NRCRRECS=1;
INPUT @41 @;
(the code added by the July change, between these two
lines was also deleted by this August change).
-After the @; after CAEND is input, insert this code:
IF CASTR=0 AND CAEND=0 THEN DO;
NRCRRECS=0;
DELETE;
END;
With these changes, MXG now skips over the MWTEXTBF area
that contains the IPARML control block, and instead reads
the MWTCAREA directly to determine how much data (if any)
follows this control record.
Thanks to Ian Davies, Workers' Compensation Board of Alberta, CANADA.
Thanks to Connie Mak, Avon, USA.
Change 13.125 Landmark TMON for MVS corrections. The line reading:
VMACTMVS IF JDSTCBS GT 10000 THEN DO;PUT _N_= COL=;LIST;STOP;END;
Jul 23, 1995 was deleted. That debugging code for a bad record (over
Aug 21, 1995 10,000 TCBs in real memory) caused the MXG job to stop
before the end of the input file, and there was no error
message nor condition code set by MXG; the only clue was
a single record hex dump printed on the SAS log.
Variables STARTIME and DURATM were removed from the KEEP=
list for dataset TMVSCC (which is an event record, not an
interval), and SYSTEM=CCCSMFID; was inserted before the
%%INCLUDE SOURCLIB(EXTMVCC);
to correct the blank value for SYSTEM in that dataset.
Also, variable CFIUTYPE was changed from numeric to
character and formatted $HEX8, to be consistent with the
other occurrences of unit type in other TMVS records. I
recognize this may cause a problem if you combine TMVSCF
data sets built before and after this change.
Thanks to Rod Fernandes, Albert Heijn B.B., BELGIUM.
Change 13.124 RMM SMF Record caused INVALID DATA FOR MDUCDATE/MDUCTIME
VMACEDGS if there had been no user change because the PD4 fields
Jul 21, 1995 were nulls. Insert ?? between the variable name and
the &PDB.4. format name in the two lines which input the
variables MDUCDATE and MDUCTIME.
Thanks to Bob Newbury, University College System of Nevada, USA.
Change 13.123 Variables B1DIS B1INT CPGM LPGM ROBID ROBTY and SMSMC are
TYPETMS5 added to the output datasets created by TYPETMS5; these
Jul 21, 1995 variables (new in TMS Release 5.1) were added to VMACTMS
by Change 13.083, but were not carried into the datasets
created by the TYPETMS5 processing.
Thanks to Norbert Korsche, OMV AG, AUSTRIA.
Change 13.122 Variable RACFUSER from type 30 was added to the DSETOPEN
ANALDSET and DSETSUMS datasets created from 14/15/64 records so
Jul 21, 1995 that Auditors can know the submittor of the job that did
the access to the file.
Thanks to Freddie Arie, Lone Star Gas, TEXAS.
Change 13.121 Reading your 3990 Mod 11 Fat DASD with SAS INFILE CVAF
VMXGVTOC option will fail, because the DSCB 5 2-byte addresses are
Jul 19, 1995 3-bytes for those devices. Removing the CVAF option will
circumvent the SAS error, because MXG does not need the
DSCB 5 records to constuct the VTOC datasets. However,
far better than using this old VMXGVTOC technology, the
ASMVTOC/VMGXVTOF pair have been the recommended VTOC tool
in MXG for years. If you now have DFSMS, using their
DCOLLECT is even better, since it includes the VSAM and
VVDS data that previously required you to also run the
ASMVVDS/TYPEVVDS pair. I have removed the CVAF option
from the INFILE statement to prevent this error, should
anyone still be using VMXGVTOC and not read this note.
April 20, 2006 Notes:
1. Member JCLDAYDS and DAILYDSN are the members to
use to capture/bill-for disk space and tapes.
2. SAS Note SN-015522 for SAS Version 9.1.3 does
now recommend specifying the CVAF option in the
INFILE statement to circumvent an 0C4 ABEND in
module UNKNOWN function VXVTC at offset 00082C.
Thanks to Terry Poole, SAS Institute Cary, USA.
========MXG Version 13.03, dated Jul 19, 1995, thru 13.120======
Change 13.120 Support for Boole & Babbage's HiperCache 4.1.1 and 4.1.3,
VMACHIPR (INCOMPATIBLE, because data was inserted into the fixed
Jul 18, 1995 portion of the record and LSR segments were expanded).
The JCTJOBID,INITTIME and READTIME were added to the VSAM
record, and LSR subpool information added new variables
SMFnnHSB,HSR,HSW,HFR,HFW,MFH,MTH,FFH, and FTH for buffers
in hiperspace, and successful/failing reads/writes
and move-pages to/from hiperspace.
Thanks to Dave Myers, Time Warner Cable, USA.
Change 13.119 XMXGSUM update. This new enhanced replacement for VMXGSUM
XMXGSUM was ready to go, until I ran TESTANAL and discovered that
Jul 18, 1995 repetitive invocations of the new logic caused strange
errors (Unable to Load IMAGE SASQUIL, Unable to Open
File) due to memory problems. Increasing the REGION= to
48M eliminated the errors, but until I examine why there
is an increase, it is not safe to replace VMXGSUM yet.
But because you are wise enough to read this text, and
can be prepared to increase region size to save lots of
CPU, time, and DASD space, I strongly recommend you use
the new XMXGSUM (see comments therein) for summary of the
large datasets (CICSTRAN, DB2ACCT in particular).
Change 13.118 -DB2 Statistics Detail and Long Trace reports had EDM pool
ANALDB2R variables that were non-zero for never-happened, and some
ADOCDB2 totals were printed instead of averages. One logic error
Jul 18, 1995 (repeated variables in SUM= list) was not caught because
the test suite uses the new XMXGSUM replacement for
VMXGSUM, and one of the many enhancements in the XMXGSUM
replacement is that it weeds out any duplicates! Using
XMXGSUM will correct some of the report values, but not
all, so you will still need to install the new ANALDB2R.
-Audit reports show FORMAT $DB2OBID NOT FOUND, even though
the log shows they were created. I think the error is an
out of memory condition while loading this very large
format, but there is no clue on the log!
But the real culprit is the creation of the TEMPDBID and
TEMPOBID datasets that are used as CNTLIN= for PROC
FORMAT. The early logic to map DBID/OBIDs output one
value for each T102S105/T102S107 obs, (open), but a new
value is needed only if the mapping changed, so the logic
now outputs one value for each unique mapping. The
500,000 obs in TEMDBDID dropped to 2,000 and the memory
problem disappeared.
Increasing MEMSIZE and REGION may circumvent, but 72MB
was not enough with 500,000 obs in TEMPOBID dataset
that is used as CNTLIN= for PROC FORMAT.
-ADOCDB2 was updated with an IBM note on why SRB CPU time
in DB2ACCT is invalid for CICS attachment and for DDF.
-PMSQL01 trace was rewritten as a series of sorts and one
monster data step using SET and a BY statement to save
DASD space. Major reduction in DASD space with this
revisions (200 cyl now, 3000 cyl not enough before!).
Time selection is only at the report level for SQL01;
all data still must be read and processed (hence put on
temporary DASD). We are reviewing alternatives for the
next version, but this change makes SQL trace feasible
even with 500,000 trace events in only 200 cylinders of
WORK space (previous version failed to complete with an
entire 3000 cyl volume!). You can always use IMACFILE
to select SMFTIME of interest with PDB=SMF execution
until we have time to address this enhancement to SQL01.
Thanks to Phil Schwartz, Pershing, USA.
Thanks to Dean Berry, Farmland Industries, USA.
Thanks to ???, Schweizerische Bankgesellshaft, SWITZERLAND.
Thanks to Clark Jennings, Reynolds Metals Company, USA.
Change 13.117 Variables were not kept because they were misspelled in
VMACCADM the KEEP= list. Variables STFKUS18 STIVSR10 STIVSR16
Jul 15, 1995 STIVSR22 STIVSR28 and STIVSR34 replace their misspelling.
Thanks to Freddie Arie, Lone Star Gas, TEXAS.
Change 13.116 Landmark converted History Records with invalid data for
TYPEMON8 MRO segment cause "INVALID OFFSETS IN USER SEGMENTS".
Jul 15, 1995 The record is defective, and Landmark is investigating
their error, but MXG, by default, DELETEs the record so
there is no observation output. To circumvent, insert
MROCOL=0; MRONUM=0; after MROCOUNT=0; so that the MRO
logic will not be executed. This will cause zero obs in
the dataset MONIMRO, and variables MROTIME,MROCOUNT will
always be zero in dataset MONITASK, but dataset MONITASK
will contain valid observations. This circumvention will
NOT be installed in MXG software; it is printed here only
for user modification until Landmark fixes their error.
Thanks to Warren Tanaka, Farmers Insurance Group, USA.
Thanks to Bill Padilla, Farmers Insurance Group, USA.
Change 13.115 TYPE42 variables AVGCONMS AVGDISMS AVGPNDMS had format
ADOC74 TIME13.3, but those MS PER SSCH variables should be 5.1
VMAC42 (so that 12.1 milliseconds prints as 12.1 instead of
VMAC74 0:00:12.100!). If BUILDPDB includes type 42 records,
VMACVMXA the TYPE74 variables will also have wrong format. The
Jul 12, 1995 -VMAC42. Move AVGCONMS AVGDISMS AVGPNDMS from TIME13.3 to
5.1 format in VMAC42, labels were made consistent.
-VMAC74. Labels were made consistent.
-ADOC74. Variable AVGENQMS noted as always missing in XA.
-VMACVMXA. Labels were made consistent.
-VMAC74. Also, variables AVGPNDIR PCTPNCHA PCTPNDIR were
added to 5.1 format.
Thanks to Tim Carne, Nottinghamshire County Council, ENGLAND.
Change 13.114 Variable TPXSNAME (Session Name) was always blank. Change
VMACTPX IF SKIP GT 8 THEN DO; to IF SKIP GE 8 THEN DO;
Jul 12, 1995 TPXSNAME only exists in dataset TPXAPLON.
Thanks to Jim Tintle, Mack Trucks, Inc, USA.
Change 13.113 MXG 13.01-13.02B only. CICS Shutdown report may cause
ANALCISH NOTSORTED error.
Jul 12, 1995 -Move %REPORTS statement to before %IF &REQ_REP GT 0 ....
-Find the %VMXGSUM invocation with INDATA=CICTM. Change
NOSORT=YES to NOSORT=NO in that invocation. Remove the
statements PROC SORT DATA=&MXGDS OUT=&MXGDS %VMXGFOR;
BY &BYLIST; %LET BYLIST=SYSTEM APPLID;
that immediately precedeed that %VMXGSUM invocation.
Thanks to Chris Weston, SAS Institute, ENGLAND.
Change 13.112 ACF2 subtype "L" (dataset ACF2JR) logic was redesigned.
VMACACF2 The old logic created one before ARE obs and two after
Jul 12, 1995 ARE obs, even when there were multiple ARE segments, and
the LID was decoded but not output. The redesign creates
new dataset ACF2JRL to contain the LID fields (and the
identity of the changer), one obs in ACF2JRL for each "L"
record, and dataset ACF2JR now has one obs for each ARE
entry (either before or after) with the ARE field name
and field value and the identity of the changer.
While I expected a Before and an After ARE for each
field that was changed, that's not exactly what ACF2
writes out. For fields that are bit switches, those
fields only show up in an ARE when their value is 1.
Turning a bit switch on has no Before ARE but has an
After ARE. Switching a bit switch off has a Before ARE
with no After ARE entry, so Before/After AREs cannot
be paired, but ACF2JR dataset has all the information.
Thanks to Normand Poitras, Banque Nationale du Canada, CANADA.
========MXG Version 13.02B, dated Jul 6, 1995, thru 13.111======
Change 13.111 Several variables were not kept due to spelling errors,
IMACHURN macro _KHRN527 was misspelled in IMACHURN, and datetime
VMACHURN variables were not stored as LENGTH 8.
Jul 6, 1995
Change 13.110 MXG Position Paper on support for the Year2000. MXG now
YEAR2000 supports dates after 1999, but many data records from
Jul 6, 1995 many products do not. This paper identifies which fields
in which record from which vendor do not have field width
to support Year2000, and which fields must be validated
by vendors that, while wide enough, do in fact support
the Year2000. This member will be updated as vendors
make changes and verify their date formats.
Change 13.109 Only comments were changed, but a new example of how to
IMACFILE select CICS type 110 records by APPLID or SUBTYPE was
Jul 6, 1995 coded and added as a comment block.
Change 13.108 HSM dataset DGN only processed first dump copy when more
VMXGHSM than one copies were created at the same time; copies
Jul 6, 1995 will have same start date/time and source volume in the
base, but dump copies will have different dump class name
and tape volser, and may have different output units and
device types. Additionally, this correction adds vars
hh0 mm0 ss0 and tt0 to the keep= list (so that the MCDS
key can be reconstructed).
Thanks to Wanda Prather, Johns Hopkins Applied Physics Lab, USA.
Change 13.107 Temporary datasets used in these members were kept when
ANALCNCR they should have been deleted at the end of processing.
ANALINIT This is mostly cosmetic (some of these datasets ended up
ANALTAPE being documented in member DOCVER!) but it is MXG's
TRNDTALO intention to not leave datasets in the //WORK library.
Jul 5, 1995
Change 13.106 DB2 Reporting was still wrong in 13.02A. The Statistics
ANALDB2R Reports produced replicated pages and wrong totals, due
Jul 5, 1995 to a mislocated block of code (introduced in MXG 12.12).
Also, MXG 13.01 introduced a FORMAT NOT FOUND error for
DB2DBID or DB2OBID format in Audit Reports if there were
no IFCID=105/107 observations found; the Audit report was
enhanced to print the tablespace name instead of the hex
OBID/DBID value, but the Audit report logic did not tell
you that you needed the 105/107s to create the format!
Now, we will use 105/107s if found, but will not fail if
they do not exist. (However, our Format building logic
may require REGION=48M and MEMSIZE=48M in your CONFIG
member in this version, due to duplicate entries - we
know how to fix but not in time for MXG 13.02B.)
Finally, the SQL trace report can take a lot of DASD
space, and we are re-designing that report for better
execution performance in the next version, and we will
update the instructions in comments in ANALDB2R for the
IFCIDs needed/used in various reports.
Thanks to Dean Berry, Farmland Industries, USA
Thanks to Neil Ervin, Huntington Service Company, USA.
Change 13.105 DCOLLECT with SMS 1.2 fails with INPUT STATEMENT EXCEEDED
VMACDCOL error, and prints a hex dump of a 260-byte record, if you
Jul 5, 1995 still have LRECL=264 specified in the JCL for DCOLLECT.
With SMS 1.2, the LRECL=644 must be specified for the
output of DCOLLECT (see Change 12.316, only in 12.12A),
but I did not cross-reference that change to this error.
Change 13.104 Variable GMTOFFTM was missing if LENPROD=60 (but this had
VMAC7072 no effect, as GMTOFFTM is not actually used in MXG, it is
Jun 29, 1995 only a kept variable in TYPE70). GMTOFFTM=GMTOFF70; was
inserted after GMTOFF70=GMTOFF70/4096;
Thanks to Don Friezen, B.C. Systems, CANADA.
Change 13.103 Support for 4-digit UCB addresses in Cache RMF Reporter.
VMACACHE Variables DEVN and DEVPLX need to be formatted HEX4..
Jun 29, 1995 Originally, I changed the input of @9 UNITADDR $EBCDIC3.
Jul 12, 1995 to @8 UNITADDR $EBCDIC4., hoping that IBM had the wisdom
to use that extra preceding byte for the UNITADDR, but
no joy, the byte @8 is still a reserved, hex 00 byte.
So UNITADDR in CACHE90 dataset is only 3 characters, and
you must use DEVN variable for the device number (the new
name for unit address). This note revised Jul 12, 1995.
Thanks to Rick Balint, Seattle First, USA.
Change 13.102 Support for AUTOMATE had some incorrect field lengths in
VMACAUTO the initial coding. Input of SMFA_SSN was changed from
Jun 29, 1995 $EBCDIC3. to $EBCDIC4., and SMFA_NAM from $EBCDIC3. to
$EBCDIC8. Also, SMFA_ST was added to DATETIME21.2 format
and SMFA_SSN was added to the KEEP= for all datasets.
Thanks to Rik van Roy, Procter & Gamble ETC, BELGIUM.
========MXG Version 13.02A, dated Jun 28, 1995, thru 13.101======
Change 13.101 VM CPU ID values of 'A01234'X were not supported by the
TYPEVM &PK.3. informat used in MXG, so the input was changed to
Jun 26, 1995 &PIB.3., and formatted HEX6. to support all hex valued
in the CPU ID field.
Thanks to Mr. Koeller, Sparkassen-Datendienst AG & Co. KG, GERMANY.
Change 13.100 MXG inputs DOS dates using MMDDYY8. format, because that
TYPEDOS is the way IBM writes them in the US. However, if your
Jun 26, 1995 site uses European format dates under your DOS, you will
have to change the three MMDDYY8's to DDMMYY8 because
there is no way to detect from the record.
Thanks to Mr. Koeller, Sparkassen-Datendienst AG & Co. KG, GERMANY.
Change 13.099 All nine occurrences of DATE &PD.4. were changed to
VMACFTP DATE ?? &PD.4. to suppress error message and hex dump
Jun 26, 1995 if invalid (or null) dates are found in the record.
Thanks to Mr. Koeller, Sparkassen-Datendienst AG & Co. KG, GERMANY.
Change 13.098 DB2 Accounting fields with repeated commas create SMF 101
VMACDB2 records with repeated 'FF'x values, causing MXG parsing
Jun 26, 1995 logic to fail, generating error messages on the log.
Replace all nine occurrences of IF LOC=0 THEN ...
with IF LOC LE 1 THEN ...
Thanks to Stephen Bell, Westfalisch Lippischen Sparkassen, GERMANY.
Change 13.097 Macro code which stripped blanks out of INDATA operand
XMXGSUM was removed; it was no longer needed (the XMXGSUM logic
Jun 26, 1995 now parses individual words of the INDATA string) and it
was found to consume significant CPU time.
Thanks to Mitch McKenna, SAS Institute Europe, GERMANY.
Change 13.096 DB2 Statistics Reports were corrupted in MXG 12.12 when
ANALDB2R support for DB2 3.1 was added (a block of code was mis-
Jun 26, 1995 located). See Change 13.106.
Thanks to Mitch McKenna, SAS Institute Europe, GERMANY.
=======Spoke at Greater Boston CMG meeting in Waltham, MA, 21Jun95======
Change 13.095 TYPE72 variable DOMAIN (SMF72CDN) has a value of '5c5c'x
VMAC7072 for Report Performance Group observations, because there
Jun 19, 1995 is no domain for RPGN's - it is the Control Performance
Group that measures resource consumption by Domain.
(My transaction in RPGN=99 could span several Domains as
work changes Periods in its Control Performance Group)
Thanks to Maurice Clark, ISSC Australia, AUSTRALIA.
Thanks to Chris Nibbs, ISSC Australia, AUSTRALIA.
========Initial MXG Version 13.02, dated Jun 19, 1995, thru 13.095======
Change 13.095A Variable DEVNR in type 42 datasets was not formatted,
VMAC42 causing device 0181x to print as 385! Add to FORMAT:
Jun 19, 1995 DEVNR HEX4.
Thanks to Mark Robbins, W. H. Smiths Limited, ENGLAND.
Change 13.094 Variable LUNAME was skipped in the 'E3'x record causing
VMACNAF other variables in dataset NAFLOGOF to be trashed. After
Jun 19, 1995 RTYPE='E3'X test, after NAFRLN $CHAR4. insert
LUNAME $EBCDIC8. (and add to the KEEP= list for dataset
NAFLOGOF).
Thanks to Mark Hayden, General Accident, SCOTLAND.
Change 13.093 Support for DFSORT Release 13 (INCOMPATIBLE) added many
EXTY16IN new variables to TYPE16, and three new datasets are now
EXTY16SO created with details on each file used:
EXTY16OU TYPE16IN - Input Data Sets (including concatenations)
IMAC16 TYPE16SO - SORTOUT Data Sets
VMAC16 TYPE16OU - OUTFIL Data Sets.
Jun 17, 1995 Note that DFSORT Release 13 comes with a boost that is
Nov 15, 1995 specifically designed to improve sorting of SAS datasets
(and at no additional cost!) - see the IBM announcement!
Change 13.092 Support for OPC Release 3.0 (INCOMPATIBLE). IBM added 12
IMACOPC new bytes for TRLLENGT in the header, inserted 16 bytes
VMACOPC for new field MT0CAL for dataset OPC24_1, and added new
Jun 17, 1995 MTDTYPE=15 for Step Restart (new MXG dataset OPC24D_J).
To process Release 3 records, you can make these changes
until you get the new MXG version:
-Insert after the @; that is after the INPUT of TRLFILL:
IF _OPCVER GE 3 THEN DO;
INPUT +12 @;
OFFSMF=OFFSMF+12;
END;
-Insert after the @; that is after the INPUT of MT0OTX:
IF _OPCVER GE 3 THEN INPUT +16 @;
-Update your IMACOPC to set macro _OPCVER to 3. I chose to
leave the default Release in IMACOPC unchanged at 2.
This code has been tested against only some OPC records;
there may be additional changes if other subtypes were
changed, and this text will change if necessary.
Thanks to Mr. Riccardi, AGIP Petroleum S.p.A., ITALY
Change 13.091 Support for Legent's AUTOMATE User SMF record creates 11
EXAUTOxx new datasets. Of course, now that the work is done, I
IMACAUTO discover it is Legent's intention to stabilize AUTOMATE
TYPEAUTO and replace it with OPS-MVS! In any event, there is a
VMACAUTO what looks to be useful information in these eleven data
Jun 16, 1995 datasets:
AUTOCICS CICS Statistics
AUTOCMDS CMD Statistics
AUTOIMS IMS Statistics
AUTOMISC Miscellaneous Statistics
AUTOMSGS MSG Statistics
AUTOOPNG OPEN Interface General Statistics
AUTOOPNS OPEN Interface Session Statistics
AUTOPORT Port Session Statistics
AUTORULE Rule Statistics
AUTOSQL SQL Statistics
AUTOVARS Subpool Statistics
Thanks to Rik van Roy, Procter & Gamble ETC, BELGIUM.
Change 13.090 A new exit, EXPDBSPU, taken upon entry to member SPUNJOBS
EXPDBSPU was added for the SAS/CPE product, which needs to rename
SPUNJOBS work datasets prior to SPUNJOBS invocation. I doubt that
Jun 16, 1995 anyone else will need to use this exit.
Change 13.089 All MXG datasets should contain variables SYSTEM, SMFTIME
TYPECIMS and for interval datasets DURATM and STARTIME, and have
VMACOMVT a dataset LABEL. These members revised for consistency:
VMACEPMV -TYPECIMS - LABEL added; dataset was labeled in VMACCIMS,
VMACORAC but I just learned that SAS does not propagate dataset
VMACTSOM LABELs when the dataset name is reused! DELETE of the
VMACMDF temporary datasets TRANSACT and CHAINED was also added.
Jun 16, 1995 -VMACOMVT - Variable DURATM added to datasets OMVTTBUF,
OMVTTVR,OMVTTCTC,OMVTTNCP,OMVTTLCL,OMVTTETE, calculated
as DURATM=ENDTIME-BEGNTIME.
-VMACEPMV - Variable SYSTEM added to all datasets.
-VMACORAC - Variables SMFTIME, SYSTEM added.
-VMACTSOM - DURATM added to TSOMCMND, DURATM STRTTIME and
SYSTEM added to TSOMDRU, SMFTIME added to TSOMDSNS.
-VMACMDF - DURATM added (note archaic MDFTRACK became the
APAF product, supported by TYPEAPAF), calculated as
DURATM=GBLENDTS-GBLBEGTS;
-VMAC78 - DURATM added to KEEP= for TYPE78PA & TYPE78SP.
Thanks to Carl E. Sommer, SAS Institute Cary, USA.
Change 13.088 Datasets TYPETALO, TYPE72SC, and TYPE78 were overlooked
BUILDPDB and were left in the //WORK file after their last use,
BUILDPD3 but are now deleted in the PROC DATASETS, like all of the
BUILD002 PDB work datasets, to minimize the work space required.
BUILD003
Jun 15, 1995
Thanks to Tracy Blackstone, Kaiser Permanente, USA.
Change 13.087 Continued enhancement to IBM-format RMF reports has added
ANALRMFR the Coupling Facility Usage Summary and Coupling Facility
Jun 15, 1995 Structure Activity; PDBOUT logic now builds all of
RMF type 7x datasets; Change 12.310 was added for a
non-partitioned machine.
Change 13.086 CICS Shutdown report failed if compressed datasets were
ANALCISH used, because POINT= cannot be used with compressed data.
Jun 15, 1995 We used POINT= only because NOBS= used to require POINT=,
but since SAS version 6, POINT is no longer required.
Unfortunately, though, without the POINT= operand, if the
SAS dataset is on tape or in tape format, NOBS=NOBS must
read the entire dataset to find NOBS. In this change, we
only needed to know if there were any observations, not
how many, so the problem was circumvented with different
logic, and compressed or uncompressed data worked fine.
7Nov02 update: Above text revised. See member VMXGOBS
to get the number of observations from
disk datasets.
Thanks to Chuck Hopf, MBNA, USA.
Change 13.085 Support for Antares' HURON SMF record creates 44 new data
FORMATS sets from the 20 subtypes of this extensive product. The
EXHRNnnn support exists now thanks to the significant contribution
IMACHURN of Glenn Bowman, who wrote the bulk of this support. I
TYPEHURN reviewed the code and made some cosmetic revisions (new
VMACHURN formats to decode bit strings, PIBx changed to &PIB.x,
Jun 15, 1995 sorted Labels), and validated with SMF data from a second
site (which uncovered an optional data segment in subtype
26), so I am quite comfortable with this code. Huron, to
be renamed ObjectStar, is a complex product with complex
instrumentation, but the "Huron Guide to Performance
Monitoring" documents much of the data quite well, and
two "Focus on Huron Performance" documents, subtitled
"Tuning Guidelines for Huron for MVS", and "Resource
Monitoring and Usage" give excellent discussions of how
best to analyze Huron data.
Thanks to Glenn Bowman, Wakefern Food Corporation, USA.
Thanks to Christa Neven, Geoep Boerenbond, BELGIUM
Change 13.084 -Support for APAR OW10393 which added a four byte field,
VMAC32 trashing the values in dataset TYPE32. The old MXG code
Jun 15, 1995 in this member did not protect for compatible changes by
IBM! The circumvention is to insert:
IF LENTSO GE 44 THEN INPUT +4 @;
after the block that inputs IOTMTOTL.
The actual change created new flag variable SMF32TCF='Y'
if variable SRMTRANS was set to zero by IBM because the
OUCB control block was not valid. When set, SRMTRANS
remains no longer valid for the duration of the session.
-Support for APAR OW12856, which adds one field (SMF32COS,
number of sections in subsequent records) to the header,
and raises the number of TSO command names that can
be monitored from 812 to 32767 by now creating more than
one type 32 record if necessary. This had no impact on
MXG logic, since MXG creates one observation for each
session segment in each record.
Thanks to Luc Mattheus, GEMEENTEKREDIET VAN BELGIE, BELGIUM.
Change 13.083 Support for TMS (CA-1) Release 5.1 (compatibly) adds
EXTMSDSN new variables to both TMS.TMS and TMS.DSNBREC. Both now
EXTMSTMS have CPGM (Creating Program Name) and SMSMC (SMS Mgmt
IMACTMS5 Class Name). Dataset TMS.TMS has new variables LPGM
VMACTMS5 (Last Used Program Name), ROBTY/ROBID Robotic flags,and
Jun 13, 1995 B1INT/B1DIS (B1 Security Integrity/Disclosure labels).
In addition, this revision added the "_L, _K" tailoring
macros in member IMACTMS5 (See Change 10.175), and the
EXTMSxxx Exit Members so TMS is now consistent with other
MXG processing members. These additions should be
transparent, and are needed only if you want to tailor
the contents of the TMS datasets.
Thanks to Lonnie Melamed, SHL, CANADA.
Change 13.082 DB2 3.1 only. No Statistics Reports, DB2STATS has zero
DIFFDB2 observations. The MXG logic demanded there be data in
Jun 13, 1995 DB2STAT0,DB2STAT1, and DB2STAT2 to OUTPUT to DB2STATS,
but DB2STAT2 only has observations if your DB2 uses the
new Hiperpools! The logic was changed from:
IF (QWHSRELN LT 2.9 AND IN0 AND IN1)
OR (IN0 AND IN1 AND IN2);
to:
IF IN0 AND IN1;
so that DB2STATS is created whether or not there are obs
in DB2STAT2.
I'm awaiting doc of a case where non-zero obs in DB2STATS
becomes zero obs in DB2TEMP2.
Thanks to Siegfried Trantes, IDG Informationsvararbeitung, GERMANY.
Change 13.081 ANALBLSR uses the EXCPDASD variable created by ANALDSET,
ANALDSET but ANALDSET did not sum the MULTIDD='Y' observations in
Jun 13, 1995 the STEPS dataset, so some calculations in ANALBLSR were
greater than 100%! A new data step was added to ANALDSET
to sum EXCPDASD, and also to output only one observation
per step. Insert after PROC SORT DATA=TYPE30.TYPE30_4...
DATA SORTSTEP.SORTSTEP;
SET SORTSTEP.SORTSTEP;
BY SYSTEM READTIME JOB SORTTIME;
DROP TOT_EXCP;
IF FIRST.JOB THEN TOT_EXCP=0;
TOT_EXCP+EXCPDASD;
IF LAST.SORTTIME THEN DO;
EXCPDASD=TOT_EXCP;
TOT_EXCP=0;
OUTPUT;
RETURN;
END;
A future MXG enhancement will provide a separate optional
routine that can be invoked during BUILDPDB or TYPE30
processing to sum all variables in the MULTIDD='Y'
observations into a single observation (applies to the
TYPE30_V, TYPE30_4, TYPE30_5, and TYPE30_6 datasets).
Thanks to Jerry Layne, Virginia Power, USA.
Change 13.080 Support for Sterling SAMS Storage Automation & Reporting
EXSAMSES System's user SMF record creates three new data sets:
EXSAMSTO SAMSTOT - Total pools, volumes, space avail and used
EXSAMSVO SAMSVOL - Per volume space stats, pool(s) of volume
IMACSAMS SAMSESOT - Per pool space statistics.
TYPESAMS SAMS Version 3.2.0 documentation/data was validated.
VMACSAMS
Jun 12, 1995
Thanks to Shaheen Pervaiz, Acxiom, USA.
Change 13.079 -DB2 Statistics Summary PMSTA01 was wrong or not printed,
ANALDB2R especially if INTERVAL=SHIFT was specified; this error is
Jun 12, 1995 fixable as described below.
-Only the first 60 bytes of the SQL text was printed in
the Audit reports; too many lines were changed to print
the change here.
-The PMSTA01 error can be corrected with:
Find the %VMXGSUM(INVOKEBY=PMSTA01 - ANALDB2R) segment.
- Change the argument KEEPIN=MINTIME MAXTIME,
to read KEEPIN=MINTIME MAXTIME STRTTIME,
- After the argument SUMBY= change
OR &PMSTA01 NE YES %THEN BEGTIME; to read
OR &PMSTA01 NE YES %THEN STRTTIME;
-Find the first COMMITS = SUM(Q3STCOMM, ....
then change the previous DURATM=ENDTIME-BEGTIME;
to read DURATM=ENDTIME-STRTTIME;
Thanks to Joe Richard, MBNA, USA.
Thanks to Chuck Hopf, MBNA, USA.
Thanks to Mitch McKenna, SAS Institute Europe, GERMANY.
Thanks to Victor Chacon, NYNEX Mobile Communications Co., USA.
Change 13.078 Disregard this change. It was reported that Change
VMAC110 12.324 causes SAP 5.0.c to get INVALID DATA FOR HH MM,
Jun 12, 1995 but &PK fields can't have invalid values! The problem
turned out to be a user problem, and there was no change.
Change 13.077 SAP Variable STCTIMTR bad. Because of MXG Change 12.324,
IMACICSA MXG 12.12A and MXG 13.01 and later expect SAP 5.0 data,
Jun 12, 1995 while MXG 12.12 and earlier expect pre SAP 4.3F records.
(SAP 4.3F changed STCTIMTR, 4.3J split STCFLAG/STCTASK.)
You will have to EDIT IMACICSA and verify (or change) the
INPUT of STCTIMTR (Start time) to match your SAP release:
pre-4.3F: STCTIMTR PDTIME4.
4.3F,4.3J,5.0: STCTIMTR &PIB.4.3
MXG Change 12.324 changed the INPUT of STCTIMTR from
PDTIME4 to PIB4.3 in member IMACICSA, thinking it was an
error, but it was a change between SAP 4.3J and SAP 5.0.
Unfortunately, it does not appear there is any way to
detect which version of SAP wrote the record, so you must
manually update MXG to tell me what you have!
Thanks to Norbert Korsche, OMV, AUSTRIA.
Thanks to Ralf Menz, COMLAB, GERMANY.
Thanks to Jens Schlatter, EDP Consulting Schlatter, GERMANY.
Change 13.076 ANALALL selects and prints all SMF records from a job,
ANALALL but had not been recently updated for new job-related SMF
VMAC24 records. Member IMACJBCK, the "job checking" exit that
VMAC33 is used to select by JOB name, should have been included
VMAC36 by every job-related record processing, but had not been.
VMAC42 Several VMACs create multiple datasets from different
VMAC59 subtypes, but only some subtypes are job-related, so the
VMAC60 ANALALL logic now prevents creation of those unneeded
VMAC78 datasets. These SMF records processing VMACs were hit:
VMAC80 24,33,36,42,59,60,78,80,91,101.
VMAC91
VMACDB2
Jun 12, 1995
Change 13.075 Support for WYLBUR Accounting from ACS Wylbur. This SMF
EXTYWYLA record is similar to TYPEWYLB (WYLBUR Accounting from OBS
IMACWYLA Wylbur), but five variables are added, and fields are in
TYPEWYLA different locations, hence the need for these new members
VMACWYLA to create new dataset WYLBURA.
Jun 12, 1995
Thanks to Matt Anderson, Texas Tech University, USA.
Change 13.074 Further performance improvement. LENGTH DEFAULT=4; is
XMXGSUM now set in first DATA step, saving //WORK space.More
Jun 11, 1995 diagnostics added internally.
Thanks to Diane Eppestine, Southwestern Bell, USA.
Change 13.073 PDB.JOBS variables ABEND and CONDCODE cannot be used for
VMAC30 ABEND analysis; instead, PDB.STEPS must be used, because
Jun 9, 1995 a) programs abend, not jobs, and using PDB.STEPS lets you
identify which program was involved, so you can
separate inhouse-written programs from externally
acquired programs. Furthermore, counting ABENDs by
program will identify a trend that might be lost if
the same program abends many times in different jobs;
there may be only one ABEND per JOB so the program
would be overlooked if you counted by jobs.
b) multiple abends can occur in a job - which one do you
want in PDB.JOBS - the first, last, or which?, and
c) the type 30 subtype 5 record values are inconsistent:
variable CONDCODE is the value from the final step,
not the last step which failed, and
variable ABEND relates to the entire job, not a
specific step, based on bits in TERMIND1.
-However, an MXG logic error can cause type 30 subtype 5
to have ABEND='SYSTEM' for a job which had ABEND='USER'.
The correction is to replace
IF COMPCODE>=32768 THEN DO;
with these five lines:
IF TERMIND1='1.......'B THEN DO;
ABEND='SYSTEM';
CONDCODE=COMPCODE;
END;
ELSE IF COMPCODE>=32768 THEN DO;
Thanks to ???, Benetton, ITALY.
Change 13.072 APAR OW08641 for NPM Version 2.2 discusses support for
FORMATS LU 6.2 sessions acting in half-duplex flip-flop mode, and
VMAC28 adds new APPC values for Session Type in LSCDSTYP, so the
Jun 9, 1995 variable is now formatted by new format $MG028ST.
Note added Mar 27, 1998: The format $MG028ST was created
by this change, but the variable LSCDSTYP was not given
the $MG028ST format until Change 16.037!
Change 13.071 OS/400 Version 3.1 only, the DSARM and DSTYPE variables
VMACQAPM are reversed. The IBM documentation shows the order was
Jun 8, 1995 changed, so I coded to agree with the documentation, but
now real data proves that the documentation was wrong,
so now the code agrees with the data! Change the last
pair of INPUT's of DSARM and DSTYPE so that the order is
DSARM, then DSTYPE. There are three pairs of INPUTs, and
now, all will have DSARM before DSTYPE.
Also, two references to variable SPRES2 were removed.
Thanks to Clark Jennings, Reynolds Metal, USA.
Thanks to Freddie Arie, Lone Star Gas, TEXAS.
Change 13.070 Dataset NDMCT variable NDMDSDSN (Source Dataset Name)
VMACNDM was added to the KEEP= list, the second occurrence of
Jun 8, 1995 NDMDODSN in the LABEL statement was changed to NDMDSDSN,
and the first INPUT of NDMDODSN was changed to NDMDSDSN.
Thanks to Sue Yarker, Midland Bank PLC, ENGLAND.
Thanks to Natasja van Gavel, Alcatel, BELGIUM.
Thanks to Bryant Osborn, NationsBank Technology Services, USA.
Change 13.069 Cosmetic changes. Label for DB2END should be "LAST*DB2"
ANALDB2C (it was "LAST*CICS..."), and incomplete comments were
Jun 8, 1995 completed and clarified.
Thanks to Geert De Gand, Nationale Bank Van Belgie, BELGIUM.
Change 13.068 Change 12.196, when implemented, did not contain the
VMACNSPY ELSE ARSPNET=.; statement, but that line has been
Jun 8, 1995 added so the code agrees with the change.
Thanks to Alan Keeble, British Steel, UK.
Change 13.067 Backlevel SAS (TS404 for sure) causes error VFONF DOES
ANALRMFR NOT FOLLOW VFON0 (because syntax of A-F for variable name
Jun 8, 1995 suffix didn't work right in TS404). Install current SAS,
or you could RENAME each of the A-F variables to 10-16,
and change the ARRAYs to VFON0-VFON16.
Thanks to David Childers, Lowe's Companies, Inc, USA.
Change 13.066 Support for MVS/ESA 5.2 (compatible) SMF record changes.
VMAC24 -Type 24 SMF record variables SMF24LN4,SMF24SAN,SMF24SAC
VMAC30 were added to TYPE24, listing system affinity names; I
VMAC42 keep only the first 8 system names in SMF24SAC.
IMAC42 -Type 30 SMF record added new CPU measures CPUASRTM (the
EXTY42XR Preemptable SRBs and Client SRBs CPU time) and CPUENCTM
Jun 5, 1995 (the Enclave CPU time); note that these two new CPU times
are already included in CPUTCBTM. New variables ENCLACTM
ENCLCPSU and ENCLTRAN provide Enclave transaction active
time, CPU Service units, and transaction counts. Also,
variables IARVPSEC,IARVAPIN,IARVEPIN record page seconds
memory residency for IARVSERV shared CSTORE, and page ins
from Aux Store and Expanded Store. Those variables were
added to TYPE30_V,TYPE30_4,TYPE30_5 & TYPE30_6 datasets
but were not propagated into BUILDPDB/BUILDPD3 as yet.
Finally, Automatic Restart Management Section provides
the element name, type, restart group, and the timestamps
when IXCARM issued REGISTER,WAITPRED,READY, & DEREGISTER;
the ARMS variables were only added to TYPE30_5 until more
is understood about their usage.
-Type 42 SMF new subtype 11 for XRC Extended Remote Copy
creates new dataset TYPE42XR with the logical session
name, and per-SSID activity counts (data mover reads,
with/without data, format/update writes, etc.).
The new segments have been coded, but not all have been
tested with data records that have populated those data
segments, so verify your results.
Change 13.065 MVS/ESA 5.1 TYPE30_V (PDB.SMFINTRV) SET CLOCK causes bad
VMAC30 INTBTIME/INTETIME (interval begin/end time of day) value.
Jun 4, 1995 This note revised Jul 12, 1995 - prior belief that error
Jul 12, 1995 was leapseconds value in sysplex timer is not correct.
Fields SMF30IST/SMF30ISS should be identical, with IST on
local clock and ISS on GMT clock (so that we can measure
the GMT-to-local delta), but one site had deltas between
IST and ISS of 36 seconds for days, then 80 seconds, etc.
After chasing through IBM SMF level 2 for weeks with no
answer, the site's IBMer found an IBM note describing the
culprit: the use of SET CLOCK command:
When a system is IPLed, the GMT is exactly in sync
with the local time, but when a SET CLOCK command is
issued to change the local time to be out of sync with
the GMT (and this also causes the "SMF midnight" to be
recalculated), now jobs run show an IST-ISS delta
exactly equal to the GMT-local delta of the SET CLOCK
command! And the note says that IBM plans only to
document to clarify that changing the local time may
get the local time out of sync with the correct offset
from GMT! Note "Relationship between SMF30ISS and
SMF30IST" by David, document number (?) ADB0627.
MXG variable EXECTM in TYPE30_V becomes negative, and
variables INTBTIME/INTETIME/SYNCTIME are earlier than
all other timestamps in the interval record.
Existing TYPE30_V datasets can have the negative
EXECTM corrected by this recalculation:
EXECTM=INTETIME-INTBTIME;
Since IBM plans no change, I have revised my logic to now
expect this difference and to use it:
1. After using the FLOOR(IST-ISS) to calculate the GMT
offset in hours, I now also calculate any delta in
seconds and add that back into the GMT offset so that
ISS and IET values will be brought up to the IST
clock. After the line:
GMTOFF30=100*FLOOR(SMF30IST-INTBTIME+10)/100);
Insert this line:
GMTOFF30=GMTOFF30+SMF30IST-INTBTIME;
This logic will work when the error is fixed, too!
2. The calculation of EXECTM in the interval record does
not use LOADTIME anymore:
First, find the line:
IF MULTIDD NE 'Y' THEN DO;
and then find the subsequent line reading:
EXECTM=(INTETIME-MAX(LOADTIME,INTBTIME));
and change it to read:
EXECTM=INTETIME-INTBTIME;
(The actual change restructured the logic.)
Thanks to Wolfgang Vierling, Vereinte Versicherungen, GERMANY.
Change 13.064 Multi-UCB type 14/15 records were not properly processed
VMAC1415 due to MXG logic error. The actual order of segments is
Jun 2, 1995 basic, (open date), UCB-segments, (hiperbatch), (ISAM),
(extended segment), and there are two possible extended
segments: compressed statistics or SMS classes. Support
required relocating MXG code so that the hiperbatch, ISAM
and extended segment data are read in before processing
the UCB segments. Since MXG OUTPUTs one observation for
each UCB segment, the hiperbatch and compressed file
statistics appear only once per record, not once per UCB
segment. For multi-ucb records, then, the counts for the
hiperbatch and compressed file statistics will be kept in
the first observation from each record and will be set to
missing in the 2nd and subsequent observations created by
the additional UCB segments. Variable UCBSEGNR was also
added to identify whether observations in TYPE1415 are
created by the first or subsequent ucb segments.
Multi-ucb records are created for concatenated BPAM files
for multi-volume files, and for striped files.
Real data records clarified IBM documentation of the real
order of these segments.
The major impact without this fix was that multi-ucb obs
had SMS storage, data, and management class blank in all
but the last observation for that SMF record (and the
compression statistics could have been incorrect).
Thanks to Paul Dzielak, Smith Barney, USA.
Change 13.063 Variables TTOCPREL,TTOCSUCL have value of *NONE* unless
VMXGHSM the volser started with H; a local tailoring mod was left
Jun 2, 1995 in the code that should have been removed. Delete the
two lines that contain '*NONE*'.
Thanks to Wanda Prather, Johns Hopkins Applied Physics Lab, USA.
Change 13.062 MXG 13.01 only.
VMACNSPY -Remove "$HEX16." from line 124700, as those variables are
Jun 2, 1995 should be $HEX.2. Fortunately no harm was done, but the
variables were stored as 8 bytes instead of 1 byte!
-Labels for VRBMAXWD,VRBMINWD are now SIZE vice COUNT.
-Insert STARTIME=ENDTIME-DURATM; immediately before the
%INCLUDE SOURCLIB(EXNSPYVT); to create STARTIME.
-Variable APPLID was removed from the KEEP= list for the
datasets NSPYVTAM and NSPYVIRT as it does not apply.
-INPUT of variable NSPBPOOL was changed to $EBCDIC4. (it
was &PIB.4.) and it is now labelled 'BUFFER*POOL*NAME'.
Thanks to Rod Fernandes, Albert Heijn B.V., NETHERLANDS.
Change 13.061 All MXG-built formats for hexadecimal values now have
FORMATS OTHER=(| $HEXn. |) - for character variables
Jun 1, 1995 OTHER=(| HEXn. |) - for numeric variables
added in their creation so that undefined values are
displayed in hex. This syntax is only available in
SAS Version 6.07 and later, so if you still must try to
run MXG under archaic SAS 6.06 or more archaic SAS 5.18,
you will have to remove all of those lines from member
FORMATS before you build your archaic format library.
Thanks to Shantha Baran, British Steel, ENGLAND.
Change 13.060 MXG 13.01 only. Change 13.055 was not spelled right.
GRAFLPAR The test IF NAME GT ' ' THEN DO; added by 13.055 should
Jun 1, 1995 be IF LP&ID.NAME GT ' ' THEN DO;
Thanks to Norbert Korsche, OMV AG, AUSTRIA.
Change 13.059 -Label corrections. Variable NSPBOEXP "buffers" misspelled
VMACNSPY and variable CBPFLAG was changed to "TABLE*FLAG".
Jun 1, 1995 -Format correction. Variable NSPXRESO was removed from the
$HEX16 format, as it is a character, not hex, variable.
-MXG 13.01 only, new support for record type X caused
"INPUT STATEMENT EXCEEDED RECORD LENGTH" error. The line
M4=-4; must be changed to M8=-8; and the subsequent
reference to +M4 must be changed to +M8.
Thanks to Norbert Korsche, OMV AG, AUSTRIA.
Change 13.058 ANALDB2R error "BY VARIABLE STRTTIME IS NOT ON INPUT DATA
ANALDB2R SET WORK.DB2DUMRY" resulted from bad MXG logic. Find
May 30, 1995 "%MACRO PMSTA01", and change the next two occurrences of
" BEGTIME" to " STRTTIME" (note, don't change &BEGTIMEs):
First: OR &PMSTA01 NE YES %THEN BEGTIME;
Second: DURATM=ENDTIME-BEGTIME;
Thanks to David Klein, City of New York, USA.
=====Taught in London and Heidelberg, paper at Konigswinter CMG-CE======
Change 13.057 CICS Statistics dataset CICLSRR variables A08BKCTD and
VMAC110 A08BKDTD were incorrectly INPUT as RMFDUR4. Their input
May 4, 1995 lines (two pairs) must each be replaced with:
HH &PK.1. MM &PK.1. SS &PK.1. TH ?? &PD.1. @;
IF TH GE 0 THEN A08BKCTD=HMS(HH,MM,(SS+TH));
ELSE A08BKCTD=.;
INPUT
Thanks to Steve Harris, TVA, USA.
Change 13.056 Change 13.017 (TYPE6 OUTDEVCE for 4-digit Remote) was not
VMAC6 correct. The "5,2" in the SUBSTR should be "6,2". The
May 4, 1995 text of 13.017 has also been changed to be correct.
Thanks to Norbert Korsche, OMV, AUSTRIA.
==Changes thru 13.055 were included in MXG 13.01 dated May 3, 1995===
Change 13.055 Intermittent LPARs (test LPARs) caused strange graphs;
GRAFLPAR The statement IF LP&ID.UPDTM GT 0 THEN DO;
May 3, 1995 should be IF NAME GT ' ' THEN DO;
so the LPAR numbers don't change from hour to hour!
Thanks to Tom Kelman, SunTrust Service Corporation, USA.
Change 13.054 Variable NRSAMPLE was added to the TYPE74CF KEEP= list.
VMAC74 Several calculations on the Coupling Facility require the
May 3, 1995 number of samples.
Thanks to Bruce Widlund, Merrill Consultants, USA.
Change 13.053 If you used TEMP01 or TEMP02 parameters to segregate the
XMXGSUM work files, variables were missing because dataset VARS
May 3, 1995 was not in the DELETE list. In addition, the logic has
been significantly simplified by using SUM(A B C)=A B C
(instead of the archaic SUM= list with X1-Xnn placeholder
dummy variables). This might be the last iteration as
XMXGSUM has now been tested with just about all feasible
combinations, but I will wait until MXG 13.02 before I
actually replace VMXGSUM with this XMXGSUM. I strongly
suggest that you install XMXGSUM in place of VMXGSUM as
described in the comments in XMXGSUM - XMXGSUM is much
more efficient, especially for CICS and DB2 data.
Thanks to Diane Eppestine, Southwestern Bell, USA.
Change 13.052 When ASUMTALO was revised (Change xx.yyy), corresponding
GRAFTALO changes to GRAFTALO should have been made. SYSTEM was
May 2, 1995 removed, ALOCTIME changed to TIMESTMP and the average
tape drives allocated is TAPEDRVS=TAPEDRVS/DURATM;.
Thanks to Tom Elbert, John Alden Life Ins., USA.
Change 13.051 AS/400 3.1 dataset QAPMSYS duration variables SITRNT,
VMACQAPM S6TRNT and SPRES1 are INPUT as &PD.8.3 instead of &PD.8.
May 2, 1995 V 3.1 increased the field width from 6 to 8 bytes but the
change in units to milliseconds was not documented! In
addition, SPRES1 and SPRES2 were renamed SPTRNT and
SPTRNS and added to the KEEP= list for QAPMSYS dataset.
(The "Passthru" SICPU/SITRNT/SITRNS and the "inter"
SPCPU/SPTRNT/SPTRNS variables are both needed to track
total interactive work.) See also Change 13.011.
Thanks to Lynn Marchant, Coca Cola, USA.
Change 13.050 TYPE42DS I/O Statistics Subsection does not always exist,
VMAC42 but MXG input the variables nevertheless, causing really
May 2, 1995 large values for I/O durations and cache statistics.
Insert IF OFFDSIO GT 0 THEN DO;
before OFFDSIO=OFFDSIO-3+OFFSMF;
Before OFFDSAM=OFFDSAM-3+OFFSMF;
insert END;
So the fields will be missing instead of wrong. I am
still investigating why OFFDSIO (S42DSIOO) is zero.
Thanks to Ted Blank, IBM, USA.
Change 13.049 TYPE116 dataset has zero observations. Change both
VMAC116 IF SUBTYPE=1 THEN ... to IF SUBTYPE=0 THEN .... Insert
May 2, 1995 OFFQMAC=OFFQMAC-3+OFFSMF; before INPUT @OFFQMAC
Thanks to E.U.C. Hettinga, Centrum Voor Informatie.., NETHERLANDS.
Change 13.048 XMXGSUM in MXG 13.01 still failed, if the TEMPDD argument
XMXGSUM was used, due to mislocated code when Change 13.032 was
Apr 26, 1995 made. Also, repeated executions of XMXGSUM could fail
because temporary dataset VARS was not deleted at the
end of XMXGSUM.
Change 13.047 ANALTAPE in MXG 13.01 still failed, because Change 13.044
ANALCNCR to ANALCNCR created an error when there was no SUMBY used
Apr 26, 1995 in the %ANALCNCR invocation. (Only ANALTAPE had the
exposure). (See also Change 12.327).
One instance caused A NUMBER HAS BECOME TOO LARGE error.
==Changes thru 13.046 were contained in MXG 13.01 dated Apr 27, 1995==
Change 13.046 Report enhancements to the CICS Shutdown reports, titles
ANALCISH for detail reports, and other cosmetics were added by
Apr 26, 1995 this extensive user contribution.
Thanks to Willi Weinberger, IDG, Germany.
Change 13.045 LENGTH statement was moved to before FORMAT statement so
IMACICSA character variables' length is correct. See SAS Technical
Apr 25, 1995 Note (above, or in MXG Newsletter TWENTY-EIGHT).
Thanks to Stefaan Lemaire, COMPAREX Information Systems, BELGIUM.
Change 13.044 Missing value for timestamp was not protected, causing
ANALCNCR invalid DO loop control variable. ASUMTALO now throws
ASUMTALO away invalid records, and ANALCNCR is now protected for
Apr 25, 1995 missing value in DO loop control variables.
Change 13.043 These members were revised to work with XMXGSUM. They had
ASUMVMON exploited a loophole in VMXGSUM (the right side of the
TRNDVMON NORM= list was an expression instead of a variable name)
Apr 25, 1995 that does not exist in XMXGSUM.
Change 13.042 -The mapping of DB2 DBID/OBID hex values to the table name
ANALDB2R uses the IFCID 105 and 107 records to dynamically create
Apr 25, 1995 a look up table, the $DB2DBID and $DB2OBID formats. The
logic assumed a one-to-one mapping, but it turns out the
values get reused (DELETE and then CREATE a tablespace)
so the logic for creating these formats was redesigned to
append the timestamp of the 105/107 to create the range
of datetimes when that DBID/OBID pair was in effect.
-ANALDB2R now will execute under OS2 - the logic to detect
if the PDB pointed to an MVS tape failed on a non-MVS
platform. Also, OPTIONS LINESIZE=132 is now specified so
proper print width is used for these reports.
Thanks to ???, ???, USA.
Change 13.041 TYPE72MN variables WSETFIX/WSETASM were incorrect.
VMAC7072 They are now created using:
Apr 25, 1995 WSETFIX=FRAMEFIX/AVGUSER;
WSETASM=FRAMEASM/AVGUSER;
Thanks to Jim Gill, St. Johns River Power Park, USA.
Change 13.040 Dataset DB2ACCT variable QBACSWS and QBnCSWS were always
VMACDB2 zero; statement (QBACPID QBACGET QBACRSVD QBACSWS ...
Apr 25, 1995 should have been (QBACPID QBACGET QBACSWS QBACRSVD ...
Thanks to Jason Lau, CSC, AUSTRALIA.
Change 13.039 -The SAS/CPE product expects a "system" variable in each
DIFFTMDB dataset built by MXG, and their cross-check uncovered
TYPEMON8 these datasets which did not have a "system" variable:
TYPETMON MONIDSA - SYSTEM (retained from "TI" record)
VMACCIMS TYPECTLD - SYSTEM (was missing from KEEP= list)
VMACCTLD TMDBDE - SYSTEM (retained from "TA" record)
VMACDCOL -Dataset labels were missing in CIMSxxxx (IMF) datasets.
VMACOMSM -Variable DCDRECFM has been created in dataset DCOLDSET
VMAC7072 -SAS/CPE also expects a "duration" variable in interval
VMAC89 datasets; most MXG interval datasets contain STARTIME,
Apr 25, 1995 ENDTIME, and DURATM, but there were some omissions that
VMAC28 have now been corrected for consistency; you should now
May 2, 1995 expect those three variables in all interval datasets.
TMDBDA - No duration in record, required new member
DIFFTMDB to be invoked by TYPETMDB to SORT
and then create DURATM=DIF(ENDTIME);
OMSMSJOB - DURATM=OMFS2ETM-OMFS2STM;
TYPE7204 - DURATM should have been in KEEP= list.
TYPE7204 - DURATM should have been in KEEP= list.
TYPE89 - DURATM=SMF89IET-SMF89IST;
NPMxxxxx - DURATM=ENDTIME-STARTIME added to datasets
NPMNCINT NPMNGINT NPMNLINT NPMNLSUM NPMNRINT
NPMVSVAD NPMVSVAP NPMVSVBF NPMVSVDV NPMVSVVR
NPMNVINT NPMNVSUM NPMINTRI NPMINNEO NPMIN25L
NPMIN25P NPMINNVC NPMINFRP NPMLANIN
Thanks to Carl Sommer, SAS Institute Cary, USA.
Change 13.038 Support for subtypes 4 and 5 of HMF SMF record was added
EXTYHMFR to decode both subtypes; the subtype 4 creates a new data
IMACHMF set, TYPEHMFR, with path/route detail, while TYPEHMF4 has
VMACHMF the node statistics data. Subtype 4 has been data-tested
Apr 25, 1995 but there were no subtype 5s in the test data file.
Thanks to Shaheen Pervaiz, Acxiom, USA.
Change 13.037 Reports showing union of all systems were missing from
ANALTAPE the revision introduced in MXG 12.12.
Apr 21, 1995
Thanks to ???, ????, USA.
Change 13.036 Continued validation of ANALCNCR closed these exposures:
ANALCNCR -GOPTIONS HTITLE=1 HTEXT=.75 added to reduce the size of
Apr 21, 1995 text and titles to readable proportions.
-Plot of summary had MAX axis value slightly lower than
the max value plotted, and DEVICE= specification was
ignored.
-Plots failed with 0 observations in datasets.
-Invalid DO loop range when no SUMBY= was specified and
intervals were being synchronized.
Thanks to Tom Parker, Hogan Systems, USA.
Change 13.035 Support for APAR OW04653 which adds several variables to
VMAC74 TYPE74ST (Coupling Facility Structures) which appear to
Apr 20, 1995 be quite important in tracking capacity of the Coupling
Facility:
R744SCUF R744SDEC R744SDEL R744SMAE R744SMAS R744SMIS
R744SNLH R744SSIZ
These changes and the MXG corrections in Change 13.004
are important enough for users of MVS/ESA 5.1 in Goal
Mode (Workload Manager) that MXG 13.01 is required.
Users with MVS/ESA 5.1 still in compatibility mode still
require only MXG 12.12, but installing 13.01 is still
recommended.
Thanks to Scott Coryell, First Bank System, USA.
Change 13.034 Protection for RACFTYPE=55 to prevent "SKIPPED SEGMENT"
VMAC80A message, and variable RACFEVNT= was added to the SKIPPED
Apr 19, 1995 SEGMENT message to identify which event contained that
segment, in case it is necessary to decode and add any
new variables.
Thanks to Henrik Tonnisen, Jyske Bank Data A/S, DENMARK.
Change 13.033 A new global macro variable, MXGDEBUG, is now defined in
VMXGINIT VMXGINIT, to facilitate internal debugging %MACRO code.
Apr 18, 1995 Globaling this macro name allows debugging to be enabled
without source code changes; however, I expect that this
option will typically be used only by MXG Tech Support in
problem resolution, or during developmental testing.
It is currently implemented only in member XMXGSUM, with
these initial arguments defined:
1= Display normally non-printed messages about which
variables are being dropped because they were not
found in the input datasets - VMXGSUM specific.
2= Turn on MPRINT
3= Turn on MPRINT SYMBOLGEN
4= Turn on MPRINT SYMBOLGEN MLOGIC
You would use %LET MXGDEBUG=x; to enable this debug.
Change 13.032 More validation of this soon-to-be-replacement for the
XMXGSUM VMXGSUM member. If a variable appeared twice in one of
Apr 21, 1995 the lists or is not found in the input dataset, the
wrong number of 'Xn' variables to skip over in the
PROC MEANS was calculated, causing output variables to
contain incorrect values. The logic to calculate how
many variables are to be skipped was corrected.
-Ranges of variables BKT1-BKT8 were supported, but parsing
BKT1-BKT18 missed variables 9-18; that is now corrected.
-If all variables are missing for a NORM parameter, a note
is printed and the parameter is ignored.
Thanks to Diane Eppestine, Southwestern Bell, USA.
Thanks to Tom Elbert, John Alden, USA.
Change 13.031 Variables QTPUBDD and QTXAIRLM were incorrectly spelled
TRNDDB2S as QTPUBD and QTXAIRL respectively in MXG 12.12/12.12A.
Apr 18, 1995 Although documented as having been made in April, this
Sep 20, 1995 change was not actually made in TRNDDB2S until September.
Thanks to Diane Eppestine, Southwestern Bell, USA.
Change 13.030 Support for IBM's IRRDBU00 - RACF Database Unload Utility
EXRAC... is provided by this significant user contribution from
IMACRACF Peter Proppe. The utility creates a sequential file from
TYPERACF a restructured RACF database, so your RACF administrator
VMACRACF can ask complex queries and create reports about the RACF
Apr 18, 1995 security definitions (like who has access to what, etc.!)
There are 39 MXG datasets created by this enhancement.
See comments in member VMACRACF for documentation, and
the IBM documentation is in RACF Macros and Interfaces.
Thanks to Peter Proppe, Bremer Lagerhaus Gesellschaft, GERMANY.
Change 13.029 Landmark MONIDSA build was copied from TYPETMON in Change
TYPEMON8 12.315, but the LABELs and FORMATs for the variables were
Apr 18, 1995 not copied until now. In addition, this "interval" data
record contains neither a DURATM nor STARTIME nor SYSTEM
fields that describe the interval. Am awaiting Landmark.
Thanks to Carl Sommer, SAS Institute Cary, USA.
Change 13.028 Support for Sterling's SOLVE NCL CPU-time accounting user
EXTYSOLV SMF record creates new dataset TYPESOLV allowing you to
IMACSOLV collect NCL CPU usage at the user level. These records
TYPESOLV are interval records, but records are only created if the
VMACSOLV CPU time used by the user exceeds the threshold specified
Apr 14, 1995 in the SOLVE USERACCT command.
Thanks to Arzina Merali, Alberta Public Works, CANADA.
Change 13.027 0C4 ABEND in this assembly program occurred because IBM
ASMRMFV loaded an offset address for enqueue table, but there was
Apr 14, 1995 no enqueue table. To correct, find the line reading
L R8,ENTENTMX(,R9)
and insert these two new lines:
LTR R8,R8
BZ ENDENT
Then find the label (in column 1) MVEENT, and then find
the statement BNE MVEENT several lines later. Insert
(in column 1) ENDENT DS 0H after that BNE.
The actual change in this version of the RMF Monitor III
decompress program was more extensive - now statistics
of records read/written are printed on the job log, and
you can now select which classes of records are written.
Thanks to Leon Berthou, Dan Computer Management, DENMARK.
Change 13.026 ICEBERG SMF record subtype 5 (deleted data space release)
VMACICE did not use ESTOSET to locate the data segment, causing
Apr 13, 1995 incorrect values for the extent addresses and TOIOTIME.
Jun 3, 1995 After the line now reading: EXTOSET=EXTOSET-3;
insert a new line reading: INPUT @EXTOSET @;
Text added 3Jun95:
And delete the line +4 /* UNDOCUMENTED*/
It turns out there have been two different lengths of
ICEBERG (or IXFP) subtype 5 records, one with that 4-byte
undocumented field (and RDW=148), now without that field
(and RDW=144, which means the SAS LENGTH=140). An INPUT
STATEMENT EXCEEDED RECORD LENGTH error occurred when the
140-byte record was read with the 144-byte-expecting MXG
12.12! The above change using EXTOSET and deletion of
the +4 protects for either length of IXFP record.
Thanks to Tom Kelman, SunTrust Service Corporation, USA.
Thanks to Rich Morris, Progressive, USA.
Thanks to Brian Crow, British Telecom, WALES.
Change 13.025 Dataset TYPE72GO variable PGPEXCP is now kept for goal
VMAC7072 mode. Note that PGPIOTM is no longer calculatable for
Apr 12, 1995 Goal Mode, because the IBM developers eliminated the
option to use IOTM instead of EXCP for RMF I/O units in
MVS/ESA 5.1 Goal Mode.
Thanks to Al Keeble, British Steel, ENGLAND.
Change 13.024 The +1 reserved field after the INPUT of CHIRECNT should
VMACTMVS be +4 instead. This error trashed values in the TMVSCH
Apr 12, 1995 (Channel Path I/O) dataset.
Thanks to Nico Lenaerts, SAS Belgium, BELGIUM.
Thanks to Wim Desmecht, DOLMEN Computer Applications NV/SA, BELGIUM.
Change 13.023 Dataset CICFCR variable A17DSTYP was mislabeled, input as
FORMATS numeric instead of character, and was not decoded. Now,
VMAC110 it is input as character, and new format $MGCICDT decodes
Apr 12, 1995 the Dataset Type as BSAM, ESDS, KSDS, RRDS, or PATH.
Thanks to Chuck Hopf, MBNA, USA.
Change 13.022 Support for NETSPY Release 4.6 added, thanks to advance
EXNSPYAL documentation from LEGENT (that release won't ship until
EXNSPYVT summer). Their changes were compatibly made.
FORMATS -Variable NSPYNETW (Network ID) was added to the header so
IMACNSPY it is now kept in every MXG NSPYxxxx dataset.
VMACNSPY -Dataset NSPYAPPL. New variable NSPNETAP (Network ID of
Apr 12, 1995 the Application) was added. Also, labels for variables
Apr 14, 1995 APOTLN62 and APOTNN62 were corrected; these variables
measure bytes sent outbound on sessions where response
time is or is not monitored.
-Dataset NSPYLU. New variables LUNETID, PCSESSID, VILUNAME
were added, containing Network ID of this LU, Procedure
Correlation ID, and Virtual LU Name respectively.
-Dataset NSPYETHR. New variable NSPEDISD, Discarded
Datagrams was added.
-Additional changes were made that were not 4.6 related:
-New datasets NSPYALRT and NSPYVTAM are now created from
type X and B records; these records are not new with
Release 4.6, but had not been decoded previously. The
type X record has been tested with data, but there are
data values for NSPXRTYP and NSPXVART which are not shown
in NETSPY documentation. NSPYVTAM has not been data-ed!
-Corrections found during early code validation:
Test for LMI Station should have been OR instead of AND
i.e., (NSPNSUBE='20'X OR NSPNSUBE='10'X) THEN DO;
Test for FRSE Station should have been OR vice AND:
i.e., (NSPNSUBE='20'X OR NSPNSUBE='80'X) THEN DO;
Second input of REBYTCT with /*XRBY*/ was deleted.
Second REBYTCT in KEEP list for NSPYTIC3 was deleted.
Thanks to Rod Fernandes, Albert Heijn B.V., HOLLAND.
Change 13.021 NETSPY type N records subtypes 07 (TIC3) and 08 (Trans
EXNSPYTP Priority) were not correctly processed, causing Divide by
EXNSPYT3 zero with subtype 07 variable CYCLSPD. The circumvention
IMACNSPY is to change the line
VMACNSPY IF NSPNRECI='02'X OR NSPNRECI='06'X OR NSPNRECI='07' OR
Apr 10, 1995 NCPELTYP=80X THEN DO;
to read
IF NSPNRECI='02' OR NCPELTYP=80X THEN DO;
The actual change was more extensive, creating two new
datasets, NSPYTIC3 and NSPYTPRI from the 07/08 subtypes.
Thanks to Rod Fernandes, Albert Heijn B.V., HOLLAND.
Change 13.020 -XMXGSUM failed if one of the input datasets did not exist
XMXGSUM (as in the first time a TRND members is run) AND any of
Apr 10, 1995 variables in the datasets did not exist. (VMXGSUM did not
fail because it protected by creating missing variables
using the IF X=. THEN X=.; "compiler faker" statement.)
Logic corrected, and switches were added to help in the
debugging of XMXGSUM.
-KEEPIN macro needed to be UPCASE'dED.
Thanks to Diane Eppestine, Southwestern Bell, USA.
Change 13.019 The example SAS program has a "EXPECTING VARIABLE" error.
ACHAP35 -Insert
Apr 3, 1995 TODAY=TODAY();FORMAT TODAY DATE9.; DROP TODAY;
after the statement
IF LASTDATE NE TODAY()-1 THEN DO;
-Change LASTDATE's FORMAT from MMDDYY8. to DATE9. (to
be consistent with MXG's DATE conventions).
-Change "5X" to "+5".
Thanks to Bruce Hewson, Alcoa, AUSTRALIA.
Change 13.018 The %INCLUDE SOURCLIB(ASUMDB2S); should be deleted from
JCLPDB6 the JCLPDB6 example, as there is no member ASUMDB2S.
Apr 3, 1995 (There is a TRNDDB2S, but it uses the DB2STATS dataset
as its input, and DB2STATS is already an interval dataset
so there is no need for an ASUMDB2S. All ASUMxxxx members
create interval data from detail data.)
Thanks to Bruce Hewson, Alcoa, AUSTRALIA.
Change 13.017 TYPE6 OUTDEVCE for a 4-digit Remote Number is R2030PR1,
VMAC6 instead of the old Rnnn.PRm format. MXG parsed variable
BUILDPDB OUTDEVCE to set DEVICE=PRINTER or PUNCH, expecting the
BUILDPD3 period delimiter, but the new format causes DEVICE to be
BUILD005 blank, which causes lines that were formerly counted in
Apr 3, 1995 variable PRINTLNE or PUNCHCRD to be counted in variable
EXTWTRLN instead, in both the TYPE6 dataset and in the
PDB.PRINT and PDB.JOBS datasets.
In VMAC6, replace these four lines:
IF PR=:'PR' THEN DEVICE='PRINTER';
IF PR=:'PU' THEN DEVICE='PUNCH ';
with these six lines:
IF PR=:'PR' OR
(SUBSTR(OUTDEVCE,1,1)='R' AND SUBSTR(OUTDEVCE,6,2)='PR')
THEN DEVICE='PRINTER';
ELSE IF PR=:'PU' OR
(SUBSTR(OUTDEVCE,1,1)='R' AND SUBSTR(OUTDEVCE,6,2)='PU')
THEN DEVICE='PUNCH ';
Note: above text corrected on May 3, from 5,2 to 6,2.
-Variable TOTLINES, the sum of PRINTLNE,PUNCHCRD,EXTWTRLN,
in the PDB.PRINT dataset was always correct. However, I
now realize that TOTLINES should also be created in the
PDB.JOBS dataset, so the BUILDxxx members were changed to
create and label variable TOTLINES into PDB.JOBS.
Thanks to Norbert Korsche, OMV, AUSTRIA.
Change 13.016 MXG 12.12 inadvertently changed some variables' FORMAT
VMAC7072 from 5.1 to 5.0. Line 102100 in VMAC7072 should be 5.1
Apr 3, 1995 instead of 5. so that one decimal place of precision
will be printed.
Thanks to Joanne Turpie, Department of Labour, NEW ZEALAND.
Change 13.015 MXG 12.12 and MXG 12.12A. MONTHBLD sort error; the BY
MONTHBLD list for TYPE72 should be exchanged with the by list for
Apr 3, 1995 TYPE72DL, and in the TYPE72DL sort list, replace PERFGRP
with SRVCLASS. (Make MONTHBLD look like WEEKBLD!).
Thanks to John Mattson, National Medical Enterprises, USA.
Change 13.014 Semicolon is missing at the end of SET PDB.APAFDOMA and
ANALAPAF the colon after PROC PRINTTO DATA=... should be a semi
Mar 30, 1995 colon, and a PROC PRINTTO; was added as the last line to
Apr 25, 1995 reset the print destination back to the log.
Thanks to Bruce Widlund, Merrill Consultants, USA.
Change 13.013 Tracking IMS DEDB (Data Entry Data Base) and MSDB (Main
VMACIMSA Storage Data Base) activity is accomplished with the IMS
Mar 30, 1995 fastpath type 59x subcode 37x log record, but MXG only
output when SYNCRTYP='01'X. In IMS 4.1 at least, most of
the 59x37x records contain either 10x or 20x. Since I
don't normally delete observations, and because the 4.1
documentation suggests the meaning of this field has been
changed, I have changed the logic so all subcode 37 log
records will be output in IMS5937 dataset.
Thanks to Don Cleveland, Blue Cross Blue Shield of California, USA.
Change 13.012 MXG now detects that fields have been EXCLUDED from your
VMAC110 SMF type 110 CICS/ESA records, and prints error message
Mar 30, 1995 telling you to run UTILCICS and use its output to update
member IMACEXCL for MXG to support records with EXCLUDE.
Thanks to George Scott, Rockwell International Corporation, USA.
=====Changes thru 13.011 were in Early MXG 13.01 dated Apr 1, 1995=====
Change 13.011 Support for OS/400 Version 3.1.0 has INVALID DATA FOR ...
VMACQAPM because I had no test data for validation until now!
Mar 29, 1995 -Value of ASLEVEL starts with an unwanted blank. Use the
COMPRESS() function to eliminate that blank, by changing:
AS400VRN=PUT(GDESRV,2.)!!'.'!!PUT(GDESRR,3.1);
to read
AS400VRN=COMPRESS(PUT(GDESRV,2.)!!'.'!!PUT(GDESRR,3.1));
(because ASLEVEL is set from AS400VRN).
-All tests of IF ASLEVEL ... for value of '3' must be
changed to '3.1.0' and the one test for LE '2' must be
changed to LT '3.1.0'.
-Variables SWRES1,SPRES1,SMRES1,S6TRNT,SERES1,SARES1,
SBRES1,SXRES1, and SIRES1 input must be &PD.8 vice &PD.6.
-Variables SIRES1 and SIRES2 are now SITRNT and SITRNS.
-Calculation of PCTIOPBY needs to be copied into the 3.1.0
logic.
-Replace ELSE IF LENGTH=2364 OR LENGTH GE 2374 THEN DO;
with ELSE IF ASLEVEL LE '2.2.0' THEN DO;
-Replace ELSE IF LENGTH=3090 THEN DO;
with ELSE IF ASLEVEL GE '3.1.0' THEN DO;
-Reverse DSTYPE and DSARM in the 3.1.0 input for QAPMDISK.
Thanks to Len Marchant, Coca-Cola Enterprises, USA.
Change 13.010 Complete revision of support for HP's PCS for UNIX. There
EXHPAI.. are now separate members for the AIX, SUN, and HPUX UNIX
EXHPSU.. systems, because not all metrics exist on all three UNIX,
EXHPUX.. and the HPPCS record formats are different on each:
IMACHPAI
IMACHPSU Suffix For Members Infile
IMACHPUX HPAI AIX ADOCHPAI,TYPEHPAI,ASUMHPAI... HPAI
TYPEHPAI HPSU SUN ADOCHPSU,TYPEHPSU,ASUMHPSU... HPSU
TYPEHPSU HPUX HPUX ADOCHPUX,TYPEHPUX,ASUMHPUX... HPUX
TYPEHPUX
VMACHPAI These datasets are created from HPPCS records:
VMACHPSU
VMACHPUX AIX : HPAIAPPL,HPAICONF,HPAIDSK ,HPAIGLOB,HPAILANS
Mar 29, 1995 HPAIPROC
SUN : HPSUAPPL,HPSUCONF,HPSUDSK ,HPSUGLOB,HPSULANS
HPSUPROC
HPUX: HPUXAPPL,HPUXCONF,HPUXDISK,HPUXDSK ,HPUXGLOB
HPUXLANS,HPUXPROC,HPUXVOLS
This change replaces the support in TYPEHPCS.
The HPAI and HPUX support has now been validated in real
production sites. I am still trying to understand the
HP UX Disk data (HPUXDISK and HPUXDSK are similar but not
the same, and have repeated Disk addresses in interval
data) and SUMMARY=5 caused a problem with the AIX data,
but both sites are happy and productivly measuring UNIX!
Thanks to Richard Clary, Entergy Services, Inc.
Thanks to Lorenzo Wright, NCCI, USA.
Change 13.009 DB2 dataset T102S145 variables QW1145OB-QWF145OB have the
VMAC102 DB value instead of the OB value. Find all occurrences
Mar 27, 1995 of QWX145DB, and change the DB to OB in the fifteen lines
with QWn145OB on the left of the equality.
Thanks to Peter Durrant, National Australia Bank, AUSTRALIA.
Change 13.008 Support for TCP/IP SMF record APAR PN69321-PN69322, which
VMACTCP adds the API user's job name, APIJOBNM, to the API INIT
Mar 27, 1995 and API TERM event records. This support was coded based
on the APAR description, but has not been data-tested.
Change 13.007 NetSPY dataset NSPYNCP variables FBQ_PCT, FBH_PCT, and
VMACNSPY FBL_PCT can cause zero-divide error because MXG did not
Mar 24, 1995 understand the new data added by LEGENT.
The block of code that read:
CYCLUTIL=10*UCYCLETM/(DURATM*CYCLSPD);
FBQ_PCT =100*FREEBUFQ/MAXFREEB;
FBH_PCT =100*FREEBUFH/MAXFREEB;
FBL_PCT =100*FREEBUFL/MAXFREEB;
BUF_UTIL=100 - FBL_PCT;
now reads:
CYCLUTIL=10*UCYCLETM/(DURATM*CYCLSPD);
IF TFQBANCP GT 0 THEN DO;
FBQ_PCT =100*CFBQUELN/TFQBANCP;
FBH_PCT =100*FBQLNHWM/TFQBANCP;
FBL_PCT =100*FBQLNLWM/TFQBANCP;
END;
ELSE IF MAXFREEB GT 0 THEN DO;
FBQ_PCT =100*FREEBUFQ/MAXFREEB;
FBH_PCT =100*FREEBUFH/MAXFREEB;
FBL_PCT =100*FREEBUFL/MAXFREEB;
END;
BUF_UTIL=100 - FBL_PCT;
See further corrections in Change 13.021.
Thanks to Roger Zimmerman, Kemper Service Company, USA.
Thanks to Mr. Dechamps, R & V Versicherung, GERMANY.
Change 13.006 Error: Variable SYSTEM not Found, because all occurrences
ANALTALO of SYSTEM should be removed from ANALTALO - the analysis
Mar 24, 1995 of tape allocation is across all systems, and variable
SYSTEM is not kept in either ASUMTALO or TRNDTALO.
This error was only in the MXG 12.12A revision.
Thanks to Freddie Arie, Lone Star Gas, TEXAS.
Change 13.005 For 3990-6 in Basic Mode, variables CSCONF,CSAVAIL,
VMACACHE CSPINNED,CSOFFL,CNCONF,and CNPINNED were 1024 times too
Mar 23, 1995 large; MXG converted K-bytes to bytes, but the conversion
only applies of the controller is in Enhanced Mode. Put
a DO group around the six lines containing "1024*":
IF CSSTAT='....1111'B THEN DO; .... END;
to convert only for Enhanced Mode.
Thanks to Jim Ritter, Blue Cross and Blue Shield of Oregon, USA.
Change 13.004 MVS/ESA 5.1 TYPE74ST Structures dataset "INVALID DATA FOR
VMAC74 R744SATM ..." error message, plus missing observations.
Mar 23, 1995 -The first structure was reread each time, and the 2nd-nth
text revised structures were not output, because the second occurrence
May 3, 1995 of "INPUT @SMF744SO " should have been just "INPUT "
(note, this is the INPUT statement just after the
DO _I_=1 TO SMF744SN; statement).
Note that this change will increase the count of obs that
are created in dataset TYPE74ST.
-Variables R744SATM,R744SASQ,R744SSTM,R744SSSQ,R744SQTM,
R744SQSQ,R744SDTM, and R744SDSQ were documented by IBM as
floating point, but they are actually binary numbers; the
eight INPUT statements for these variables with
&RB.8.6 must be changed to &PIB.8.6
Thanks to Scott Coryell, FBS Business Technology Center, USA.
Thanks to Steve Smith, BGS Systems, USA.
Thanks to Dr. Alexander Raeder, Karstadt AG, GERMANY.
Thanks to Harmuth Beckmann, Karstadt, AG, Germany
Change 13.003 If you changed the duration of RMFINTRV (by tailoring the
ANALPGNS _DURSET macro defined in member IMACRMFI) this report did
Mar 23, 1995 not work, because it merges TYPE72 and RMFINTRV. Now,
ANALPGNS uses _DURSET to force the STARTIME of the TYPE72
data to match the STARTIME of RMFINTRV before the merge.
To make the correction, replace the line reading:
PROC MEANS NOPRINT DATA=PDB.TYPE72;
with these six lines:
%INCLUDE SOURCLIB(IMACRMFI);
DATA TYPE72;
SET PDB.TYPE72;
_DURSET
DROP DATE HOUR MINUTE;
PROC SORT DATA=TYPE72 %VMXGFOR ;
BY SYSTEM STARTIME PERFGRP;
PROC MEANS NOPRINT DATA=TYPE72;
Thanks to Carol King-Baer, Vanderbuilt University Medical Ctr, USA.
Change 13.002 DSNAME='UNKNOWN - CONCATENATED BPAM' was set by MXG for
VMAC1415 all striped, multi-volume, and IAM datasets, when it was
Mar 23, 1995 supposed to be set only for PDS datasets. The correction
is to change the ELSE DO; immediately preceding the
DSNAME='UNKNOWN...' statement to read:
ELSE IF DSORG='PO' THEN DO;
Thanks to Jim Zwier, Smith Barney, USA.
Change 13.001 Cosmetic changes. In ANALINIT there was no TITLE3 for
ANALINIT REPORT2. In UCICSCNT, variable BYTES is now formatted
UCICSCNT with MGBYTES (so 2.793E8 prints ast "266MB").
Mar 19, 1995
Thanks to Norbert Korsche, OMV, AUSTRIA.
===Changes thru 12.328 were included in MXG 12.12A dated Mar 20, 1995==
(but were not printed in MXG Newsletter TWENTY-SEVEN)
LASTCHANGE: Version 13