Additional information on the GSS ILOG files.

Document ID : KB000012615
Last Modified Date : 14/02/2018
Show Technical Document Details
Introduction:

You have read all the documentation on the GSS ILOG files, and still want to have some additional information on the allocations and configuration of them to understand it better how this works. Then here are some questions and answers to give you additional information on them.

Question:

1. Is there a way to allocate ILOGs dataset under SMS with passing explicit dataclass and storclass values using the ALLOC_ILOG command and SRVMAINT. 

2. I did our ILOG allocations through IDCAMS based on HLQ.CAW0JCL(BYSIALI) as per the CA Common Services Installation Guide but I am concerned about a note from the CA Insight™ Database Performance Monitor for DB2 for z/OS, System Reference Guide, Chapter 4: Installing Optional Components, Install the Global Subsystem (GSS), Step 7: Define Product-Specific GSS ILOG Data Sets that says to “Use SRVMAINT to initialize new ILOG data sets; otherwise, scrolling errors result”. 

3. I have allocated pairs ILOGs with primary and secondary allocations as per HLQ.CAW0JCL(BYSIALI) and examples found in the various manuals, but they are reported as full by the DISPLAY ILOG command without even being extended. Why are ILOGs allocated with secondary allocation? 

4. Once they were reported as full by the DISPLAY ILOG command, I did a LISTCAT on it to find out that the HI-U-RBA never reached the HI-A-RBA (primary allocation) value? Curiously the HI-U-RBA appears to match the PAGE value * 4K. 

5. I tried setting the ILOG PAGE value to the primary allocation cylinders value * 180 but the GSS address space failed short on storage. Our primary allocation was 100 cyls and PAGE value set to 18000? I kept the 100 cyls allocation but reduced the PAGE to 180 (1 cyl. value). That worked but only one cylinder worth of space appear to have been be used out of the 100 allocated (HI-U-RBA vs HI-A-RBA). 

6. What is your recommendations for ILOG allocations in terms of size, number of subfiles, PAGE? 

7. I do not quite understand if an $user_ilog_full IMOD needs to be coded by us, if this comes as part of GSS or Insight or if it is required at all? 

8. There seems to be no way to de-allocation ILOGs while the GSS address space is up? Is there a better way to resize/delete/create ILOGs without needing to shut down the entire GSS address space? 

9. Can you explain exactly what happens when an ILOG sub-file full condition is reached? 

10. Can you explain exactly what happens when an ILOG sub-file switch occurs? 

11. Can we get into situations where all ILOG sub-file of a given file get full? Can you explain exactly what happens then? 

Environment:
z/OS anyCCS 14.0, 14.1CA Insight/Db2 anyGSS delivered with CCS releases
Answer:

1. You can allocate the ILOG files also with IDCAMS, check the CCS 14.1 manual, the Allocate ILOG files : 
Allocate the ILOG files as VSAM LDSs by using the SRVMAINT utility (recommended) or IDCAMS. 

With IDCAMS you can specify a STORAGECLASS(class), DATACLASS(class) if you need. 
(url: https://docops.ca.com/ca-common-services-for-z-os/14-1/en/administrating/ca-global-subsystem/rexx-language-in-ca-gss/how-ilog-files-work/allocate-ilog-files

2. Using IDCAMS should also be fine. In the BYSIALI member you used as sample, it reads it's also for Insight ILOG files. 

3. The space requirement for these files is based on the number of ILOG PAGES that has been specified for them to hold. 
If all the ILOG PAGES can be allocated within the Primary space allocation then there will be no expansion into the secondary extents. 

4. Listcat will not show you how many ILOG Pages are available in the Virtual file and this is what controls the ILOG full message 
not how much space is used in the physical VSAM file. If you get an ILOG full message then all the ILOG Pages have been used. 

5. That's correct. If you specify 180 ILOG pages that will use about 1 cylinder of the VSAM file. 

6. We don't have any specific recommendations. The requirements vary for each DB2 subsystem and the activity on 
that system. 

7. The $USER_ILOG_FULL imod is part of the GSS... It's called by an GSS INTERNAL imod called $INT_ILOG_FULL. 
It's not required, only see this recommendation : 
When you are logging large volumes of data, provide a $USER_ILOG_FULL IMOD so that CA-GSS can automatically switch or reset ILOGs that become full. If you do not provide the IMOD, CA-GSS automatically resets the full ILOG. 
See manual url : https://docops.ca.com/ca-common-services-for-z-os/14-1/en/component-reference/ca-global-subsystem-statements-and-commands/special-purpose-imods 

8. You can create new ILOG files and change the PARMLIB members (INSIGHT, or other) to specify the NEW ILOG files. Then RECYCLE GSS with the new names. This requires only a brief period of downtime. 

9. When an ILOG subfile is full, CA-GSS marks it “dump required", and the next available subfile is cleared and used for recording. When you no longer need the data on the filled subfile, reset it with the RESET ILOG operator command. The data in the reset subfile, however, remains intact until the subfile is needed for re-use. Whenever an ILOG subfile is full and a switch occurs, the $USER_ILOG_FULL special purpose IMOD is scheduled (if it is present). The argument string that is passed to this IMOD consists of the ILOG file number and subfile number. If this IMOD returns the result string RESET, the ILOG subfile is reset and made available for recording. Any other result string leaves the ILOG subfile in “dump required” status. If $USER_ILOG_FULL is not available, the ILOG subfile is always reset. 
See manual url: https://docops.ca.com/ca-common-services-for-z-os/14-1/en/administrating/ca-global-subsystem/rexx-language-in-ca-gss/how-ilog-files-work 

10. Whenever an ILOG subfile is full and a switch occurs, the $USER_ILOG_FULL special purpose IMOD is scheduled (if it is present). The argument string that is passed to this IMOD consists of the ILOG file number and subfile number. If this IMOD returns the result string RESET, the ILOG subfile is reset and made available for recording. Any other result string leaves the ILOG subfile in “dump required” status. If $USER_ILOG_FULL is not available, the ILOG subfile is always reset. 
See manual url: https://docops.ca.com/ca-common-services-for-z-os/14-1/en/administrating/ca-global-subsystem/rexx-language-in-ca-gss/how-ilog-files-work 

11. If the procedures to dump the ILOG files setup correctly, or there is no $USER_ILOG_FULL available, the ILOG subfile is always reset.