How to: Avoid refreshing shared read-only base libraries multiple times

Running the KCIJPLOD load job is part of most maintenance scenarios. For sharing-with-base environments, this job loads both the LPAR-unique libraries and the common shared base libraries by default. The RTE_LOAD_SHARED_LIBS parameter in the configuration profile of each runtime environment controls whether or not the base libraries are loaded. If you have multiple runtime environments sharing the same base libraries, to avoid loading the base libraries multiple times designate one environment to load the base libraries by leaving its flag set to Y, and disable loading of base libraries in all the others.

About this task

If the RTE_LOAD_SHARED_LIBS parameter is set to Y (the default) in the profiles for all the runtime environments that share the same base libraries, then the KCIJPLOD job for each environment loads the base libraries each time you run the KCIJPLOD job. Although it does not hurt the configuration to do so, running the job multiple times will perform multiple IEBCOPY steps to the RK* libraries for the same SMP/E code. If you have multiple runtime environments sharing the read-only base libraries, it is a best practice designate one environment to load the base libraries; for this environment, leave the RTE_LOAD_SHARED_LIBS parameter set to the default. Set the value for the other environments to N.

Procedure

To disable loading of base libraries in sharing runtime environments, locate the RTE_LOAD_SHARED_LIBS parameter in the configuration profile and set its value to N:
IBM.ITM62351.LPAR1.WCONFIG(LPAR1) 
Command ===>                                                  Scroll ===> CSR  
000358 ** Runtime environment (RTE) settings:                                  
000359 ** Specify the name of the RTE in the RTE_NAME parameter if this RTE    
000360 ** is not enabled for System Variables (RTE_SYSV_SYSVAR_FLAG=N).        
000361 RTE_NAME                          LPAR1                                 
000362                                                                         
000365 ** Type of RTE:                                                         
000366 ** There are three types of RTEs:                                       
000367 ** FULL    - Allocates Image-specific and Base libraries.               
000368 ** SHARING - Allocates Image-specific libraries and shares Base         
000369 **           libraries with another RTE or SMP/E target libraries.      
000370 RTE_TYPE                          SHARING        * FULL, SHARING *         

000381 ** If RTE high-level qualifier of the production runtime (RK*)          
000382 ** libraries is different from PARMGEN RTE_PLIB_HILEV qualifier,        
000383 ** then specify. Otherwise, default is the PARMGEN RTE_PLIB_HILEV       
000384 ** qualifier.  For an ICAT-to-PARMGEN converted RTE, RTE_HILEV and      
000385 ** RTE_VSAM_HILEV are set to the same RTE HLQ previously used           
000386 ** prior to conversion.                                                 
000387 RTE_HILEV                IBM.ITM62351                                  
000388 RTE_VSAM_HILEV           IBM.ITM62351                                   
000389                                                                         
000390 ** Required if RTE_TYPE is SHARING:                                     
000391 ** Specify the Non-VSAM HLQ in the "RTE_X_HILEV_SHARING" of the         
000392 ** RTE being shared to by LPAR1 RTE.                                    
000393 ** For RTE_SHARE parameter, specify "SMP" value if this RTE is sharing  
000394 ** with SMP/E target libraries.                                         
000395 ** Otherwise, specify the name of the shared-to RTE in the "RTE_SHARE"  
000396 ** parameter.                                                           
000397 RTE_X_HILEV_SHARING               "IBM.ITM62351"                                    
000398 RTE_SHARE                         "BASEA"                                    

000400 ** (Optional) Only valid when RTE_TYPE is SHARING, and RTE_SHARE is     
000401 ** not SMP.  Specify "Y" to include shared runtime datasets in the      
000402 ** RTE Load job.                                                        
000403 RTE_LOAD_SHARED_LIBS              "Y"
Important: In sharing runtime environments where RTE_LOAD_SHARED_LIBS has been set to N, some of the IEBCOPY steps that refresh the read-only libraries are not generated as part of the KCIJPLOD job. However, these steps are generated in the KCIJPLOD job for the runtime environment where RTE_LOAD_SHARED_LIBS has been set to Y. Examples of these types of IEBCOPY steps that will not be generated are as follows.
EDIT       IBM.ITM62351.LPAR1.WKANSAMU(KCIJPLOD) 
Command ===>                                       
000356 //KANEXEC EXEC PGM=IEBCOPY,REGION=0M        
000357 //SYSPRINT DD SYSOUT=*                      
000358 //TKANEXEC DD DISP=SHR,                     
000359 //         DSN=IBM.ITM62351.TKANEXEC     
000360 //RKANEXEC DD DISP=SHR,                     
000361 //         DSN=IBM.ITM62351.BASEA.RKANEXEC 
000362 //SYSUT3 DD UNIT=3390,SPACE=(TRK,(15,15))   
000363 //SYSUT4 DD UNIT=3390,SPACE=(TRK,(15,15))   
000364 //SYSIN DD *                                
000365   COPY INDD=((TKANEXEC,R)),OUTDD=RKANEXEC   
000366   COPY INDD=RKANEXEC,OUTDD=RKANEXEC         
000367 /*                                          
000368 //KANOSRC EXEC PGM=IEBCOPY,REGION=0M        
000369 //SYSPRINT DD SYSOUT=*                      
000370 //TKANOSRC DD DISP=SHR,                     
000371 //         DSN=IBM.ITM62351.TKANOSRC     
000372 //RKANOSRC DD DISP=SHR,                     
000373 //         DSN=IBM.ITM62351.BASEA.RKANOSRC 
000374 //SYSUT3 DD UNIT=3390,SPACE=(TRK,(15,15))    
000375 //SYSUT4 DD UNIT=3390,SPACE=(TRK,(15,15))    
000376 //SYSIN DD *                                 
000377   COPY INDD=((TKANOSRC,R)),OUTDD=RKANOSRC    
000378   COPY INDD=RKANOSRC,OUTDD=RKANOSRC          
000379 /*                                           
000380 //KANWENU EXEC PGM=IEBCOPY,REGION=0M         
000381 //SYSPRINT DD SYSOUT=*                       
000382 //TKANWENU DD DISP=SHR,                      
000383 //         DSN=IBM.ITM62351.TKANWENU      
000384 //RKANWENU DD DISP=SHR,                      
000385 //         DSN=IBM.ITM62351.BASEA.RKANWENU  
000386 //SYSUT3 DD UNIT=3390,SPACE=(TRK,(15,15))    
000387 //SYSUT4 DD UNIT=3390,SPACE=(TRK,(15,15))    
000388 //SYSIN DD *                                 
000389   COPY INDD=((TKANWENU,R)),OUTDD=RKANWENU    
000390   COPY INDD=RKANWENU,OUTDD=RKANWENU          
000391 /*