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



Yüklə 28,67 Mb.
səhifə277/383
tarix17.01.2019
ölçüsü28,67 Mb.
#98988
1   ...   273   274   275   276   277   278   279   280   ...   383

Record Segment MXG Dataset

TA ARQ MONIARQ

AWT MONIAWT

DSP MONIDSP

DBD MONIDBDS

MRO MONIMRO

USR MONIUSR

UTG MONIUTG

TAS MONITASK

TD TDQ MONITDQ

TF TFI MONITFI

TI SYS MONISYST

CMX MONICMX

IDS MONIIDS

IRQ MONIIRQ

IWT MONIIWT

TM TMC MONITMC

TP TP MONITP

TPD MONITPD

TPG MONITPG

TR TR MONITR

DSA MONIDSA

EXP MONIEXP

XMC MONIXMC

TS TS MONITS

TSQ MONITSQ

TT TTR MONITTR

TX TX MONITX

TXN MONITXN

T2 T2 MONIT2

T2E MONIT2E

-ANALMONI's example reports using MONISYST were disabled

because many old variables no longer exist, and the old

examples weren't all that good, anyhow!


Change 15.280 Landmark's The Monitor for MVS Version 2.0 INCOMPATIBLE.

VMACTMV2 Essentially all records have been tested and do not fail.

IMACTMV2 Not all datasets have all variables decoded; as users

TYPETMV2 request them, they will be built. You must use member

Nov 19, 1997 TYPETMV2 instead of TYPETMVS for Version 2 records.

Thanks to Chris Taylor, VF, USA.


Change 15.279 MXG 15.04-MXG 15.05. DB2 report PMTRN01 caused APPARENT

ANALDB2R MACRO &SORTUOW UNRESOLVED, because Change 15.173 added a

Nov 18, 1997 new option to %ANALDBTR (UOWSORT=, that creates &SORTUOW

as a local macro variable), but old-style macro _TRANSIT

that is also defined in member ANALDBTR is also invoked

in ANALDB2R, but the &SORTUOW was local to %ANALDBTR and

did not exist when _TRANSIT was invoked. &SORTUOW is not

actually used by _TRANSIT, so the correction is to insert

%LET SORTUOW=; immediately before the _TRANSIT line.

Thanks to Tom Elbert, John Alden, USA.


Change 15.278 Calculation of B1HITRAT,B2HITRAT,B3HITRAT, and B4HITRAT

DIFFDB2 had mis-located parenthesis; there was no syntax error,

Nov 18, 1997 but the value was wrong. (Variable BPHITRAT was fine.)

The four calculations for the BnHITRAT variables need to

look like this

B1HITRAT=(QB1TGET-(QB1TSIO+QB1TDPP+QB1TLPP+QB1TSPP))/QB1TGET;

with all of the parens in the numerator.

Thanks To Yao-Chun Rickert, First National Bank of Chicago, USA.


Change 15.277 Under VM/CMS SAS, it is not possible to specify a MACLIB

INSTALL member in the CONFIG option, so the INSTALL instructions

Nov 18, 1997 for MXG under CMS were revised; now you can create the

CONFIGVM SAS A file from the copy file, and then use

SAS (NODMS CONFIG=CONFIGVM syntax.

Thanks to Sue Kent, CHEVRON, USA.


Change 15.276 IOA/Control-T 5.0 input of variable DSEXPDT was changed.

VMACCTLT If DSEXPTYP is 'C' or 'L', DSEXPDT is INPUT as PIB.4, as

Nov 18, 1997 if 'C' it is a numeric with the number of active cycles,

or if 'L' it is a numeric with the number of days since

last access; if 'D' or 'J' it is INPUT as PD4. as then

it is a date value.

Thanks to Joseph G. Ogurchak, Westfield Companies, USA.
Change 15.275 SAP IMS timestamp SAPTIMTR must be used as the Start of

VMACIMSA Transaction, and the true End time is SAPTIMTR+SAPELTI.

Nov 17, 1997 Subtracting the SAPELTI from the Log Time produced bad

results; there appears to be a delay between the true

End time and the Log Time that is being examined.

The LABEL for SAPTIMTR now indicates "START TIME..."

Thanks to Cary Jones, Philip Morris, USA.
Change 15.274 Support for CICS TS 1.2 a/k/a CICS Transaction Server 1.2

EXCICD2G is INCOMPATIBLE because IBM inserted new fields into the

EXCICD2R middle of the Type 110 Subtype 1 Monitor (Transaction)

EXCICXQ1 record, instead of adding them at the end of the record!

EXCICXQ3 You must install this Change to process TS 1.2 records.

EXCICXQ3 In addition, new variables were added to CICSLGS Stats

FORMATS dataset, and five new (and important) interval statistics

IMACEXCL data sets are created with CICS TS 1.2, described below:

VMAC110 Dataset STID Description

Nov 15, 1997 CICD2G 102 DB2 Global Statistics

CICD2R 103 DB2 Resource Statistics

CICXQ1 121 Shared TS Queue Server Coupling Facility

CICXQ2 122 Shared TS Queue Server Buffer Statistics

CICXQ3 123 Shared TS Queue Server Storage Stats.


-New variables added to CICSTRAN dataset:

BRDGTRAN='BRIDGE*TRANSACTION*ID'

CPUTM ='TOTAL*CPU TIME*CAPTURED'

ICTOTCN ='IC START*CANCEL*DELAY*RETRIEVE*REQUESTS'

PCLURMCN='LINK URM*REQUESTS'

WTDWIOCN='DISPATCHABLE*WAIT*GIVE UP*DELAY*COUNT'

WTDWIOTM='DISPATCHABLE*WAIT*GIVE UP*DELAY*DURATION'

WTICIOCN='INTERVAL*CONTROL*DELAY*COUNT'

WTICIOTM='INTERVAL*CONTROL*DELAY*DURATION'

WTLMIOCN='LOCK*MANAGER*DELAY*COUNT '

WTLMIOTM='LOCK*MANAGER*DELAY*DURATION'

WTOTIOTM='TOTAL*OTHER*WAIT*TIME*DURATION'

WTSHIOCN='SHARED*TEMP STORE*DELAY*COUNT'

WTSHIOTM='SHARED*TEMP STORE*DELAY*DURATION'

WTTOIOTM='TOTAL*I/O*WAIT TIME*DURATION'

WTUNIOTM='UNCAPTURED*WAIT*TIME*DURATION'

WTWCIOCN='WAIT*CICS/EVENT*WAIT*DELAY*COUNT'

WTWCIOTM='WAIT*CICS/EVENT*WAIT*DELAY*DURATION'

WTWEIOCN='WAIT*EXTERNAL*WAIT*DELAY*COUNT'

WTWEIOTM='WAIT*EXTERNAL*WAIT*DELAY*DURATION'


-The CPUTM is TASCPUTM + RLSCPUTM, the sum of TCB and SRB

CPU time used by the transaction.


-Three very useful new Wait variables WTTOIOTM, WTOTIOTM

and WTUNIOTM are created in CICSTRAN based on IBM's

equations in the CICS Performance Guide an help explain

why a CICS transaction is waiting:


WTTOIOTM = Total I/O Wait Time, is the sum of:

WTTCIOTM+ Terminal Control I/O Wait

WTTSIOTM+ Temporary Storage I/O Wait

WTSHIOTM+ Shared Temporary Storage I/O Wait

WTTDIOTM+ Transient Data I/O Wait

WTJCIOTM+ Journal Control I/O Wait

WTFCIOTM+ File Control I/O Wait

WTRLIOTM+ RLS File I/O Wait

WTIRIOTM+ Interregion (MRO) I/O Wait

LU61IOTM+ LU 6.1 TC I/O Wait

LU62IOTM+ LU 6.2 TC I/O Wait

SZWAIOTM FEPI Suspend I/O Wait

WTOTIOTM = Total Other Wait Time, is the sum of:

DSPDIOTM+ First Dispatch Delay (MXT+TRANCLASS)

ENQDIOTM+ ENQ Delay

WTICIOTM+ Interval Control Delay

WTLMIOTM+ Lock Manager Delay

WTWEIOTM+ Wait External Wait

WTWCIOTM+ Wait CICS/Event Wait

WTDWIOTM+ Dispatchable or Give Up Wait

RMISIOTM RMI Suspend

WTUNIOTM = Uncaptured Wait Time, is calculated as:

WTUNIOTM=SUSPNDTM-(WTTOIOTM+WTOTIOTM);
The uncaptured time (time unexplained by any variable

in CICS) is the suspend time minus the DB2/IO wait time

and the CICS wait time. What can this uncaptured time

be? We have found in SAP/CICS MRO that if 2

transactions (an update task and dialog task) are

running in tandem, then the dialog task may wait until

the update task is complete and so this wait time is

uncaptured wait time due to it waiting for another task

to complete - monitor this closely, but in most

instances WTUNIOTM is zero.


-New variables added to CICLGS Statistics dataset:

LGSAUTOD='DATA*AUTO*DELETE*FLAG?'

LGSDONLY='DASD*ONLY*FLAG'

LGSMAXBL='MAXIMUM*BLOCK*LENGTH'

LGSRETPD='DATA*RETENTION*PERIOD'

LGSSTRUC='CF*STRUCTURE*NAME'

LGSSYSLG='SYSTEM*LOG*FLAG'
-New dataset CICD2G DB2 Global Statistics contains:

D2GABORT='ABORTS'

D2GACCOU='ACCOUNTREC*SETTING'

D2GATHID='STATIC*AUTHID'

D2GATHTY='AUTHTYPE'

D2GCALLS='CALLS*USING POOL'

D2GCOMIT='COMMITS'

D2GCONGM='CONNECT*TIME*GMT'

D2GCONLO='CONNECT*TIME*LOCAL'

D2GDB2ID='DB2*SYSID'

D2GDB2RL='DB2*RELEASE'

D2GDBCON='NAME*OF THE*DB2CONN'

D2GDISGM='DISCONNECT*TIME*GMT'

D2GDISLO='DISCONNECT*TIME*LOCAL'

D2GDSNAT='DSNC*STATIC*AUTHTYPE'

D2GDSNAU='DSNC*STATIC*AUTHID'

D2GDSNCC='DSNC*COMMAND*CALLS'

D2GDSNCU='DSNC*CURRENT*NUMBER OF*THREADS'

D2GDSNLM='DSNC*LIMIT*NUMBER OF*THREADS'

D2GDSNOV='DSNC*OVERFLOWS*TO POOL'

D2GDSNPK='DSNC*PEAK*NUMBER OF*THREADS'

D2GDSNSI='DSNC*SIGNONS'

D2GDSNTT='DSNC*THREAD*TERMINATES'

D2GPLEXI='PLANEXIT*NAME'

D2GPLNAM='STATIC*PLAN NAME'

D2GRDQCU='NUMBER OF*TASKS ON*READYQ'

D2GRDQPK='PEAK NUMBER*OF TASKS*ON READYQ'

D2GSIGNO='SIGNONS'

D2GSPCMM='SINGLE*PHASE*COMMITS'

D2GTCBCU='CURRENT*NUMBER*OF TCBS'

D2GTCBFR='CURRENT*NUMBER OF*FREE*TCBS'

D2GTCBHW='HIGH*WATER*MARK*OF TCBS'

D2GTCBLM='LIMIT*NUMBER*OF TCBS'

D2GTHRCU='CURRENT*NUMBER OF*THREADS'

D2GTHRLM='LIMIT*NUMBER OF*THREADS'

D2GTHRPK='PEAK*NUMBER OF*THREADS'

D2GTHRPR='THREAD*PRIORITY'

D2GTHRRE='THREAD*REUSES'

D2GTHRTE='THREAD*TERMINATES'

D2GTHRWA='THREAD*WAITS'

D2GTHWSE='THREADWAIT*SETTING'

D2GTRQCU='NUMBER OF*TASKS ON*TCB*READYQ'

D2GTRQPK='PEAK NUMBER*OF TASKS*ON TCB*READYQ'

D2GTSKCU='CURRENT*NUMBER OF*TASKS'

D2GTSKPK='PEAK*NUMBER OF*TASKS'

D2GTSKTO='TOTAL*NUMBER OF*TASKS'


-New dataset CICD2R DB2 Resource Statistics contains:

D2RABORT='ABORTS'

D2RACCOU='ACCOUNTREC*SETTING'

D2RATHID='STATIC*AUTHID'

D2RATHTY='AUTHTYPE'

D2RCALLS='CALLS*USING*DB2ENTRY'

D2RCOMIT='COMMITS'

D2RDBENT='NAME*OF THE*DB2ENTRY'

D2RPLEXI='PLANEXIT*NAME'

D2RPLNAM='STATIC*PLAN NAME'

D2RRDQCU='NUMBER OF*TASKS ON*READYQ'

D2RRDQPK='PEAK NUMBER*OF TASKS*ON READYQ'

D2RSIGNO='SIGNONS'

D2RSPCMM='SINGLE*PHASE*COMMITS'

D2RTHPCU='CURRENT*NUMBER OF*PROTECTED*THREADS'

D2RTHPLM='LIMIT*NUMBER OF*PROTECTED*THREADS'

D2RTHPPK='PEAK*NUMBER OF*PROTECTED*THREADS'

D2RTHRCU='CURRENT*NUMBER OF*THREADS'

D2RTHRLM='LIMIT*NUMBER OF*THREADS'

D2RTHRPK='PEAK*NUMBER OF*THREADS'

D2RTHRPR='THREAD*PRIORITY'

D2RTHRRE='THREAD*REUSES'

D2RTHRTE='THREAD*TERMINATES'

D2RTHRWA='THREAD*WAITS*OR OVERFLOWS'

D2RTHWSE='THREADWAIT*SETTING'

D2RTSKCU='CURRENT*NUMBER OF*TASKS'

D2RTSKPK='PEAK*NUMBER OF*TASKS'

D2RTSKTO='TOTAL*NUMBER OF*TASKS'


-New dataset CICXQ1 CICS Shared Temporary Storage Queue

Server Coupling Facility Statistics (i.e., how much of

the CF does each structure use) contains:

S1ASYCT ='ASYNCHRONOUS*REQUESTS'

S1CNNAME='NAME FOR*CONNECTION*TO STRUCTURE'

S1CRLCT ='CREATE*LIST*FOR A BIG*QUEUE'

S1DLLCT ='DELETE*LIST*1 PER*OVERALL*DELETE'

S1DLQCT ='DELETE*QUEUE*INDEX*ENTRY'

S1ELEMCT='CURRENT*ELEMENTS*IN USE'

S1ELEMHI='HIGHEST*ELEMENTS*IN USE'

S1ELEMLN='DATA*ELEMENT*SIZE'

S1ELEMLO='LOWEST*FREE*ELEMENTS*='/

S1ELEMMX='MAX ELEMENTS*RETURNED BY*IXLCONN'

S1ELEMPE='MAXIMUM*ELEMENTS*PER ENTRY'

S1ELEMPW='DATA*ELEMENT*SIZE*POWER OF 2'

S1ELEMRT='ELEMENT*SIZE OF*ENTRY*ELEMENT*RATIO'

S1ENTRCT='CURRENT*ENTRIES*IN USE'

S1ENTRHI='HIGHEST*ENTRIES*IN USE'

S1ENTRLO='LOWEST*FREE*ENTRIES'

S1ENTRMX='MAX ENTRIES*RETURNED BY*IXLCONN'

S1ENTRRT='ENTRY*SIZE OF*ENTRY*ELEMENT*RATION'

S1FREECT='ENTRIES*ON*FREE LIST'

S1FREEHI='HIGHEST*ENTRIES*IN*QUEUE INDEX'

S1HDRS ='MAXIMUM*NUMBER OF*LIST*HEADERS'

S1HDRSCT='HEADERS*USED FOR*CONTROL*LISTS'

S1HDRSQD='HEADERS*AVAILABLE*FOR QUEUE*DATA'

S1INDXCT='ENTRIES*IN*QUEUE INDEX'

S1INDXHI='HIGHEST*ENTRIES*ON*USED LIST'

S1INLCT ='INQUIRE*ON*LIST*ENTRY'

S1INQCT ='READ*QUEUE*INDEX*STATUS*ONLY'

S1NAME ='FULL NAME*OF LIST*STRUCTURE'

S1RDLCT ='READ*LIST*ENTRY'

S1RDQCT ='READ*QUEUE*INDEX*ENTRY'

S1RRLCT ='REREAD*LIST*DATA*FOR FULL*LENGTH'

S1RRQCT ='REREAD*INDEX*DATE*FOR FULL*LENGTH'

S1RSP1CT='RESPONSES*NORMAL*EVERYTHING*OK'

S1RSP2CT='RESPONSES*BUFFER*LENGTH*TOO SHORT'

S1RSP3CT='RESPONSES*NO*MATCHING*ENTRY'

S1RSP4CT='RESPONSES*ENTRY*VERSION*NO MATCH'

S1RSP5CT='RESPONSES*LIST*AUTHORITY*MISMATCH'

S1RSP6CT='RESPONSES*MAX LIST KEY*REACHED'

S1RSP7CT='RESPONSES*STRUCTURE*OUT OF SPACE'

S1RSP8CT='RESPONSES*OTHER*IXLLIST*RTRN CODE'

S1RWLCT ='REWRITE*LIST*ENTRY'

S1SIZE ='STRUCTURE*SIZE'

S1SIZEMX='MAXIMUM*STRUCTURE*SIZE'

S1USEDCT='ENTRIES*ON*USED LIST'

S1USEDHI='HIGHEST*ENTRIES*ON*USED LIST'

S1WRACT ='WRITE*QUEUE*INDEX*ADUUNCT*AREA ONLY'

S1WRLCT ='WRITE*LIST*ENTRY'

S1WRQCT ='WRITE*QUEUE*INDEX*ENTRY'
-New dataset CICXQ2 CICS Shared Temporary Storage Queue

Server Buffer Statistics measures the queue index buffer

pool and contains:

S2BFACTS='ACTIVE*BUFFERS*OWNED*BY TASKS'

S2BFEMPS='EMPTY*BUFFERS*ON*FREE CHAIN'

S2BFENTH='BUFFERS*USED*SO FAR'

S2BFFNOS='FREE ERRORS*BUFFER*NOT OWNED'

S2BFFRES='FREES*PUT BACK*BUFFER*AS EMPTY'

S2BFGETS='GET*REQUESTS'

S2BFGFRS='GETS*WHICH USED*A FREE*BUFFER'

S2BFGLRS='GETS*WHICH*USED*THE LRU*BUFFER'

S2BFGNBS='GETS*WHICH*RETURNED*NO*BUFFER'

S2BFGNWS='GETS*WHICH*USED*A NEW*BUFFER'

S2BFHITS='GET*WHICH FOUND*A VALID*BUFFER'

S2BFKEPS='KEEPS*PUT BACK*BUFFER*AS MODIFIED'

S2BFLRUS='VALID*BUFFERS*ON*LUR CHAIN'

S2BFLWTS='GET*WAITS*ON*BUFFER*LOCK'

S2BFPNFS='PURGES*WITH NO*MATCHING*BUFFER*FOUND'

S2BFPNOS='PURGE ERRORS*BUFFER*NOT OWNED'

S2BFPURS='PURGES*MARK*BUFFER*INVALID'

S2BFPUTS='PUTS*PUT BACK*BUFFER*AS VALID'

S2BFPWTS='WAITS*ON*BUFFER POOL*LOCK'

S2BFQTY ='TOTAL*BUFFERS*DEFINED'
-New dataset CICXQ3 CICS Shared Temporary Storage Queue

Storage Statistics measure usage of AXMPGANY & AXMPGLOW

storage pool areas, with:

S3ANYFR ='FREE PAGES*IN THE*STORAGE*ANY POOL'

S3ANYLO ='LOWEST*FREE PAGES*ANY POOL*SINCE RESET'

S3ANYMX ='TOTAL PAGES*IN THE*STORAGE*ANY POOL'

S3ANYNAM='POOL*NAME*AXMPGANY'

S3ANYPTR='ADDRESS OF*STORAGE*ANY POOL*AREA'

S3ANYRQC='ANY*COMPRESS*DEFRAGMENTATION*ATTEMPTS'

S3ANYRQF='ANY GETS*FAILING*TO OBTAIN*STORAGE'

S3ANYRQG='ANY POOL*STORAGE*GET*REQUESTS'

S3ANYRQS='ANY POOL*STORAGE*FREE*REQUESTS'

S3ANYSIZ='SIZE OF*STORAGE*ANY POOL*AREA'

S3ANYUS ='USED PAGES*IN THE*STORAGE*ANY POOL'

S3LOWFR ='FREE PAGES*IN THE*STORAGE*LOW POOL'

S3LOWLO ='LOWEST*FREE PAGES*LOW POOL*SINCE RESET'

S3LOWMX ='TOTAL PAGES*IN THE*STORAGE*LOW POOL'

S3LOWNAM='POOL*NAME*AXMPGLOW'

S3LOWPTR='ADDRESS OF*STORAGE*LOW POOL*AREA'

S3LOWRQC='LOW*COMPRESS*DEFRAGMENTATION*ATTEMPTS'

S3LOWRQF='LOW GETS*FAILING*TO OBTAIN*STORAGE'

S3LOWRQG='LOW POOL*STORAGE*GET*REQUESTS'

S3LOWRQS='LOW POOL*STORAGE*FREE*REQUESTS'

S3LOWSIZ='SIZE OF*STORAGE*LOW POOL*AREA'

S3LOWUS ='USED PAGES*IN THE*STORAGE*LOW POOL'
-Formats MGCICDA, MGCICDT, and MGCICDP are created.
-Eight STIDs are no longer created in CICS TS 1.2, so

these datasets(STID) will have zero observations:

CICAUSS(22), CICDLIG(72), CICDLIR(70), CICDLIR(73)

CICDQR (43), CICDTB (33), CICIRCB(75), CICJCR (49).

The table of Dataset/STID/DSECT/etc. has been updated in

member ADOC110.


Change 15.273 MXG 15.05 only. Change 15.228 did not input the ACCOUNT

VMAC26J3 fields because IF SMF26IND='.......1........' THEN DO;

Nov 14, 1997 should have been IF SMF26IND='.......1........'B THEN DO;

the "B" at the end of the bit test was missing, so SAS

did a character comparison, which was never satisfied.

Additionally, JES3 sites must install APAR UW41108, or

you will get INPUT STATEMENT EXCEEDED RECORD LENGTH on

ID=26 record; without that APAR, the bit in SMF26IND was

turned on, but the data segment was not present! This

was for JES3 running with OS/390 Release 1.3.

Thanks to John Allender, National Computer Systems, USA.
Change 15.272 This Change was not implemented. A future change will

XUILD005 change hardcoded PIB. references to a global macro, and

XUIL3005 that will eliminate the need to keep WORK.STEPS.

Nov 14, 1997 The original text of the change was:

Nov 21, 1997 For ITSV, dataset WORK.STEPS is no longer deleted from

the //WORK library in these two "Phase-Five" members that

are used by ITSV and some smart users in place of the

"All Phases" members BUILDPDB/BUILDPD3. The ITSV product

needs the STEPS dataset to be kept in addition to the

"PDB.STEPS" dataset, and ITSV actually has been modifying

the MXG source code during execution to remove the PROC

DATASETS that deleted STEPS! By now leaving the STEPS

dataset in the work library, ITSV will no longer need to

modify the MXG source code. "STEPS" is first renamed to

"REALSTEP" where it was previously deleted (because the

SPUNJOBS member creates a dataset named STEPS so that the

macro _PDBSUMS can summarize PDB.JOBS and PDB.SPUNJOBS),

and after SPUNJOBS has been run, "REALSTEP" is then

renamed back to "STEPS".
I did not include this logic in the BUILDPDB/BUILDPD3

members that do all five phases in one step, because ITSV

does not use those members, and leaving the STEPS dataset

instead of deleting it requires somewhat more DASD space

in the work library. Sites that have created their own

PDB job using the "phase" members may want to add a

delete of the WORK.STEPS dataset after their include of

members BUILD005 or BUIL3005 if more members are included

subsequently in the same SAS step execution.

Thanks to Chris Weston, SAS Institute Cary, USA.


Change 15.271 Further consistency enhancements. All interval datasets

VMAC23 should have SYSTEM DURATM STARTIME (especially for ITSV)

VMAC24 and these didn't:

VMAC94 TYPE23 - STARTIME variable created and kept.

Nov 14, 1997 TYPE24 - SYSTEM variable kept.

TYPE94 - DURATM variable created and kept.

Thanks to Chris Weston, SAS Institute Cary, USA.
Change 15.270 OS/390 R2.4, Goal Mode Only. INVALID DATA FOR R723CIDT

VMAC7072 or R723CDQT error. The SMF Manual showed R723CTSA as

Nov 14, 1997 four-byte binary, but the DSECT shows it is eight-byte

floating point! Change PCTEXTSA &PIB.4. to &RB.8. and

three lines earlier change LENSCS GE 432 to GE 436 and

fourteen lines later change SKIP-48 to SKIP-52.

Thanks to Diane Eppestine, Southwestern Bell, USA.
Change 15.269 The eight-byte variable UOWTIME (created by INPUTing the

ADOCDB2 first six bytes of UOWID with PIB6.6 and then dividing by

ANALDB2C sixteen to convert time units into seconds) can have the

ANALDBTR same value for two unique values of the six-byte UOWID!

ASUMUOW Since UOWTIME is used to combine CICS MRO observations

IMACEXCL for the same unit-of-work, and is used to combine the

VMAC102 CICSTRAN and DB2ACCT data by unit-of-work, only members

VMAC110 that used UOWTIME (ANALDB2C,ANALDBTR, and ASUMUOW) were

VMACDB2 directly affected; the duplicate values lumped different

VMACDB2H units-of-work's transactions into one observation.

Nov 13, 1997

I had believed that any 6-byte field could be input,

converted, and stored with full resolution in a SAS

8-byte variable, but in an eight-byte floating point

non-integer, SAS can only store 15 digits on MVS and

only 14 digits on ASCII. In UOWTIME, it happens that

16 digits are required to resolve adjacent unitary

changes in the 6-byte UOWID value; one unit change in

UOWTIME is one third of a microsecond, so 8 digits are

needed for the seconds of DATETIME since 1960, and 7

fractional digits were not enough as shown in the table:
The table shows duplicate DIVIDED BY 16 values for the

different UOWID input values, and shows that adjacent

UOWID values could not be resolved:
UOWID 6-bytes INPUT PIB6.6 DIVIDED BY 16

(15 digits) (15 digits)


DDDDDDDDE100 243974979.816704 15246561.2385440

DDDDDDDDE101 243974979.816705 15246561.2385440

DDDDDDDDE102 243974979.816706 15246561.2385441

DDDDDDDDE103 243974979.816707 15246561.2385441

DDDDDDDDE104 243974979.816708 15246561.2385442

DDDDDDDDE105 243974979.816709 15246561.2385443

DDDDDDDDE106 243974979.816710 15246561.2385443

DDDDDDDDE107 243974979.816711 15246561.2385444

DDDDDDDDE108 243974979.816712 15246561.2385445

DDDDDDDDE109 243974979.816713 15246561.2385445

DDDDDDDDE10A 243974979.816714 15246561.2385446
This error wasn't seen earlier in "real" CICS systems

because UOWTIME was the real time of day when a real

transaction started, and real microseconds occurred

between successive events, so UOWTIME values resolved to

unique values for different units-of-work. But clients

like CICS/OS2 and AS/400 now send transactions into CICS,

and these originators store not a timestamp in UOWID,

but rather a counter value that is incremented for each

transaction, and as one counter unit is one third of a

microsecond, MXG's choice of storing the six-byte UOWID

token as an eight-byte datetimestamp is now proven to be

incorrect to resolve adjacent counter values.


The solution is to create a new 6-byte character variable

UOWIDCHR in both CICSTRAN and DB2ACCT datasets containing

the first six bytes of UOWID, and then to insert UOWIDCHR

after UOWTIME in each BY statement so BY NETSNAME UOWTIME

becomes BY NETSNAME UOWTIME UOWIDCHR to guarantee unique

instances are correctly merged. The logic in ASUMUOW was

revised to protect the SPIN library against a variable

UOWIDCHR NOT FOUND error.

Thanks to Carol Arnold, Brown Brothers Harriman & Co., USA.

Thanks to John Krall, Brown Brothers Harriman & Co., USA.


Change 15.268 The new IHDR110 "Type 110 Header Exit" member can be

IHDR110 used to select CICS records by APPLID or other fields,

VMAC110 since the exit is taken after the header of the CICS

Nov 13, 1997 record has been input. It can save lots of time if you

have lots of Test CICS Regions whose SMF data you want

recorded (for problem determination) but whose records

you do not want in your daily CICS PDBs, because you can

use IHDR110 to delete all records from your test regions.

See the IHDR110 member for the list of fields that exist

in the Subtype 0/1/2, for Journal/Transaction/Statistics.

Thanks to Chuck Hopf, MBNA, USA.
Change 15.267 Variable SMFRECNR was added to KEEP= list for TYPE90

VMAC90 dataset. See Technical note on Y2K Test System's SMF

Nov 13, 1997 data in MXG Technical Newsletter THIRTY-THREE.

Thanks to Carol Arnold, Brown Brothers Harriman & Co., USA.


Change 15.266 MXG 15.04-MXG 15.05. Current dates in CREATIME, STRTTIME

TYPETMON ENDTIME, UOWTIME, TIESDATE, and TIREDATE were wrong. The

Nov 6, 1997 three lines IF O LE YY LE 1959 THEN YY=YY+2000; should

have been IF 0 LE YY LE 59 THEN YY=YY+2000;

This error caused 1997 TMON dates to be in the year 2097.

Thanks to Colin J. Fester, Engen Petroleum, SOUTH AFRICA.


Change 15.265 NTSMF version 2.0.H caused INPUT STATEMENT EXCEEDED for

VMACNTSM the 0,0 (Discovery) record. The quick circumvention is

Nov 3, 1997 to replace STOPOVER with MISSOVER by using

MACRO STOPOVER MISSOVER % as the first statement, before

the %INCLUDE statement. The fix is contained in 15.06.


Yüklə 28,67 Mb.

Dostları ilə paylaş:
1   ...   273   274   275   276   277   278   279   280   ...   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