After the size of the DCI MSU DB has reached its limit of 4GB, CA Dynamic Capacity Intelligence Controller issued some error messages:
DCI0999E: ERROR PUT : (0000001C/00000008)
and stopped issuing HMC commands.
After some times, Agent job(s) issued:
DCI0999E: AGENT CACHE TABLE IS FULL.
Release : 2.0
Component : CA DYNAMIC CAPACITY INTELLIGENCEThe MSU database is full.
1) Generate the REPRO FROMKEY value
Use the attached MS-Excel spreadsheet (DCI_Compute_date.xlsx) to generate the REPRO FROMKEY value based on the data you want to keep.
//SYSIN DD *
REPRO -
INFILE(IN) -
OUTFILE(TEMP) -
FROMKEY(X'nnnnnnnnnnnnnnnn')
/*
2) Customize the clean-up JCL
Upload to mainframe and customize the attached JCL sample (#DBCLEAN.txt)
...JOBCARD
//********************************************************************
//* CA DYNAMIC CAPACITY INTELLIGENCE FOR ZSYSTEMS V2.0 GEN 0000
//* COPYRIGHT (C) 2019 CA. ALL RIGHTS RESERVED.
//********************************************************************
//*------------------------------------------------------------------*
//* UNLOAD/RECREATE/LOAD DCI MSU DB *
//* THIS JCL IS BEING PROVIDED TO CLEANUP THE MSU DATABASE
//* THE FROMKEY MUST BE CREATED USING THE EXCEL SHEET
//* PLEASE READ THE ARTICLE IN THE KNOWLEDGE BASE AT:
//* HTTPS://KNOWLEDGE.BROADCOM.COM/EXTERNAL/ARTICLE?ARTICLEID=134250
//*
//* - ADD A JOBCARD
//*
//* - CHANGE $MSUDB$ TO THE NAME OF YOUR MSU DB CLUSTER
//*
//* - VERIFY THE SPACE DEFINITIONS IF THE SIZE FITS YOUR NEEDS
//*
//*------------------------------------------------------------------*
//* DELETE IF ALREADY EXISTS
//*------------------------------------------------------------------*
//DELETE EXEC PGM=IDCAMS
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
DELETE $MSUDB$.REPRO NONVSAM PURGE
SET MAXCC=0
//*------------------------------------------------------------------*
//* CREATE REPRO FILE
//*------------------------------------------------------------------*
//CRETEMP EXEC PGM=IEFBR14,COND=(0,NE)
//TEMPFILE DD DSN=$MSUDB$.REPRO,
// DISP=(NEW,CATLG),
// DCB=(LRECL=4096,RECFM=VB),
// SPACE=(CYL,(100,100)),
// UNIT=SYSDA
//*
//*------------------------------------------------------------------*
//* REPRO COLLECTOR CLUSTER USING A FROMKEY
//*------------------------------------------------------------------*
//REPROCL EXEC PGM=IDCAMS,COND=(0,NE)
//SYSPRINT DD SYSOUT=*
//IN DD DISP=OLD,
// AMP='BUFND=180',
// DSN=$MSUDB$
//TEMP DD DISP=OLD,
// DSN=$MSUDB$.REPRO
//SYSIN DD *
REPRO -
INFILE(IN) -
OUTFILE(TEMP) -
FROMKEY(X'218BCB0000000000')
/*
//*------------------------------------------------------------
//* SORT REPRO OUTPUT TO AVOID SEQUENCE ERRORS
//*------------------------------------------------------------
//SORTRP EXEC PGM=SORT,REGION=0M,PARM='SIZE=MAX'
//SORTIN DD DISP=SHR,DSN=$MSUDB$.REPRO
//SORTOUT DD DSN=&&REPOUT,
// UNIT=SYSDA,DCB=(LRECL=4096,RECFM=VB),
// SPACE=(CYL,(100,100)),
// DISP=(NEW,PASS)
//SYSOUT DD SYSOUT=*
//SORTDIAG DD SYSOUT=*
//SYSIN DD *
SORT FIELDS=(1,20,BI,A)
SUM FIELDS=NONE
/*
//SORTWK01 DD UNIT=SYSDA,
// SPACE=(CYL,(100,10),RLSE)
//SORTWK02 DD UNIT=SYSDA,
// SPACE=(CYL,(100,10),RLSE)
//*------------------------------------------------------------------*
//* DELETE AND RECREATE THE CONTROLLER CLUSTER
//*------------------------------------------------------------------*
//STEPCRE EXEC PGM=IDCAMS,COND=(0,NE)
//SYSPRINT DD SYSOUT=*
//SYSIN DD *
DELETE ($MSUDB$)
SET MAXCC=0
DEFINE CLUSTER -
( -
NAME($MSUDB$) -
KEYS(20 0) -
SHR (2 3) -
CYL(100 100) -
) -
DATA ( CISZ (8192) ) -
INDEX ( CISZ (4096) )
/*
//*
//*------------------------------------------------------------------*
//* RELOAD PREVIOUSLY SELECTED DATA
//*------------------------------------------------------------------*
//RELOAD EXEC PGM=IDCAMS,COND=(0,NE)
//SYSPRINT DD SYSOUT=*
//OUT DD DISP=SHR,
// AMP='BUFND=180',
// DSN=$MSUDB$
//TEMP DD DISP=(OLD,DELETE),
// DSN=&&REPOUT
//SYSIN DD *
REPRO INFILE(TEMP) OUTFILE(OUT)
/*
//*
3) Stop CA Dynamic Capacity Intelligence Controller
Stop CA DCI Controller so that the MSU DB is available for the clean-up process.
Use the following command to stop the controller:
/P CONTROLR
where CONTROLR specifies the controller started task
The controller is stopped. The agents region can be active as they do not access directly the MSU DB. The DCI Agents will buffer the consumption records for a period of time and send the data to the DCI Controller when it is up again.
4) Save the current MSU DB records (Optional)
At this point, the MSU database can be saved, to have a backup file in case of any failure during the cleanup process.
5) Clean Up MSU Database
After CA DCI Controller has been stopped, MSU database is ready to create a copy and clean up the not required data in the data base. Submit the JCL you have previously customized.
6) Restart CA Dynamic Capacity Intelligence Controller
Use the following command to start the controller:
/S CONTROLR
where CONTROLR specifies the controller started task.
The controller is started. The agents re-connect to the Control region. Verify that the connection is re-established