CATSYS.DDLCATLOD can be enlarged using normal procedures. However, if it is not even large enough to hold the DMCL, this can be complicated because the definition of CATSYS.DDLCATLOD is kept in the DMCL and the DMCL load module resides in CATSYS.DDLCATLOD.
CA IDMS, all supported releases.
This is a complex process. The following instructions should be followed very closely. The process involves creating a temporary DMCL with only the segments required to define and enlarge CATSYS.DDLCATLOD, so that it will fit in the existing area. These instructions assume that the only load modules in CATSYS.DDLCATLOD are the CV's global DMCL and DBTABLE. If there are any other DMCLs, DBTABLEs or ACCESS MODULEs in CATSYS.DDLCATLOD, they will have to be re-created after the process is complete. The names of the DMCL and DBTABLE are assumed to be GLBLDMCL and GLBLDBTB respectively.
Steps 1 through 6 can be run with the CV up and will not impact the running of the system. All IDMS batch jobs run in steps 1 through 5 should be run in CV-mode.
All OCF or IDMCBCF steps must be run while CONNECTed TO SYSTEM;
1. It may be necessary to delete the global DMCL and DBTABLE load modules in order to free up space even for the temporary DMCL. To do this, do the following: In OCF: DELETE DMCL LOAD MODULE GLBLDMCL; and DELETE DBTABLE LOAD MODULE GLBLDBTB; From the ENTER NEXT TASK CODE: prompt: CLOD SYSTEM
2. Change CATSYS.DDLCATLOD to increase the number of pages. You should at least double the current size. For example: ALTER PHYSICAL AREA CATSYS.DDLCATLOD PRIMARY SPACE xxxx PAGES FROM PAGE current-low-page MAXIMUM SPACE xxxx PAGES WITHIN FILE DCCATL FROM 1 FOR ALL BLOCKS ; xxxx should be at least twice the current value. Make sure the resultant page ranges are available in the DMCL.
3. Define a temporary DMCL called TEMPDMCL. It should be as similar as possible to GLBLDMCL, but should include only segments SYSTEM, SYSMSG, CATSYS and SYSUSER. You will need to include any of the buffers to which the files in those segments map. TEMPDMCL will be used as a local DMCL only so it only needs a TAPE JOURNAL, no DISK or ARCHIVE JOURNALs.
4. Generate, punch and link TEMPDMCL. You probably have an existing job to do this for GLBLDMCL. Use that job, and just change all references of GLBLDMCL to TEMPDMCL, except for the DMCL=GLBLDMCL in SYSIDMS - leave that as it is.
5. Allocate the new dataset. Make sure that it is large enough according to the amount by which you increased CATSYS.DDLCATLOD. Call this dataset idms.cvnn.catsys.dccatlod.NEW where idms.cvnn.catsys.dccatlod is the name of the existing dataset.
6. FORMAT the new FILE using FORMAT FILE CATSYS.DCCATL; In SYSIDMS, specify DMCL=TEMPDMCL. Override the physical dataset name with //DCCATL DD DSN=idms.cvnn.catsys.dccatlod.NEW,DISP=SHR This step must be run in local mode (remove SYSCTL or specify LOCAL=ON in SYSIDMS).
7. Shut the CV down.
8. Generate, punch and link GLBLDMCL. This must be done in the same way as step 6: in local-mode, with DMCL=TEMPDMCL in SYSIDMS, and with the JCL override: //DCCATL DD DSN=idms.cvnn.catsys.dccatlod.NEW,DISP=SHR.
9. Rename dataset idms.cvnn.catsys.dccatlod to idms.cvnn.catsys.dccatlod.OLD.
10. Rename dataset idms.cvnn.catsys.dccatlod.NEW to idms.cvnn.catsys.dccatlod.
11. Start the CV. It should start with the new GLBLDMCL and the enlarged CATSYS.DDLCATLOD.
12. You most likely have a batch job which does a generate, punch and link of GLBLDBTB. Run that - in CV-mode. The purpose of this job is not to re-create GLBLDBTB in the load library because it is already there and it is not changing as a result of this process. The reason for this job is to create the GLBLDBTB load module in the new CATSYS.DDLCATLOD.
At this point the procedure is complete. There are some clean-up steps which can be run at any time.
13. In OCF: DROP DMCL TEMPDMCL;
14. In ISPF, delete dataset idms.cvnn.catsys.dccatlod.OLD.
There is no need to re-generate GLBLDMCL as step 8 accomplished that.