* copyright (C) 1984-2019 merrill consultants dallas texas usa



Yüklə 28,67 Mb.
səhifə303/383
tarix17.01.2019
ölçüsü28,67 Mb.
#98988
1   ...   299   300   301   302   303   304   305   306   ...   383

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


Yüklə 28,67 Mb.

Dostları ilə paylaş:
1   ...   299   300   301   302   303   304   305   306   ...   383




Verilənlər bazası müəlliflik hüququ ilə müdafiə olunur ©muhaz.org 2024
rəhbərliyinə müraciət

gir | qeydiyyatdan keç
    Ana səhifə


yükləyin