IRLMCONT request cannot be executed as a batch job

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

IRLMCONT request cannot be executed as a batch job and it has to be executed only in online panels, this is difficult as you cannot be all the time monitoring the output of the request.

Instructions:

IRLMCONT request can be updated to include a WHERE clause and then refresh the output of the report every 30 seconds, then the output report can be printed to a data set, when the request is stopped you can review the data set for the report created. 
 
The following sample is an update of IRLMCONT request to accomplish these functions, to avoid confusions the new request is called IRLTEST.
 
* (unqualified) Trace Lock Contentions in the IRLM                                                                  
* there were some declares here that match the stuff in IRLMCONT
* no need to re-declare them                                    
                                                                
IRLMTEST: TRACE (COLFMT=YES SL=1 LS=160)                        
                                                                
        <<*IRLM-CONTENTIONS                                     
           '_'               (AT=M HELP=ICONTSLT)               
           'HOLD'            (AT=W,HD='Stat')                   
           '     '           (HD='Time ')                       
           SUBSYS            (HD='DB2')                         
           HOLDER-PLAN-NAME  (HD='Plan')                        
           HOLDER-CORR-ID    (HD='CorrID')                      
           HOLDER-LOCK-TYPE  (HD='LockType')                    
           HOLDER-LOCK-STATE (HD='Lvl')                         
           HOLDER-RESOURCE   (HD='Resource')                    
           HOLDER-CONN-NAME  (HD='ConnName')                    
           HOLDER-AUTH-ID    (HD='AuthID')                      
           HOLDER-LOCK-DUR   (HD='Duration')                    
           HOLDER-DBID       (HD='DBID')                        
           HOLDER-OBID       (HD='OBID')                        
           LOCK-TYPE-PORL-LONG (HD='Phys/Log')                  
        KEY(                                                    
#IF DATASHR                                                     
            DATASHR-KEY,                                        
            SUBSYS,                                             
#IFEND                                                    
            THREAD-CANCEL,                                
            IHLCKACE,                                     
            HOLDER-PLAN-NAME,                             
            HOLDER-CONN-NAME,                             
            HOLDER-CORR-ID,                               
            HOLDER-AUTH-ID)                               
        >>                                                
                                                          
        <<*IRLM-CONTENTIONS                               
           '_'               (AT=M HELP=ICONTSLT)         
           'WAIT'            (AT=R,HD='Stat')             
           WAITER-SUSPEND-ELAPSED (AT=R,PF=N3.1,HD='Time ')
           SUBSYS            (HD='DB2')                   
           WAITER-PLAN-NAME  (HD='Plan')                  
           WAITER-CORR-ID    (HD='CorrID')                
           WAITER-LOCK-TYPE  (HD='LockType')              
           WAITER-LOCK-STATE (HD='Lvl')                   
           WAITER-RESOURCE   (HD='Resource')              
           WAITER-CONN-NAME  (HD='ConnName')              
           WAITER-AUTH-ID    (HD='AuthID')                
           WAITER-LOCK-DUR   (HD='Duration')              
           WAITER-DBID       (HD='DBID')                  
           WAITER-OBID       (HD='OBID')                  
           WAITER-PORL-LONG  (HD='Phys/Log')              
        KEY(                                              
#IF DATASHR                                               
            DATASHR-KEY,                                  
            SUBSYS,                               
#IFEND                                            
            THREAD-CANCEL,                        
            IWLCKACE,                             
            WAITER-PLAN-NAME,                     
            WAITER-CONN-NAME,                     
            WAITER-CORR-ID,                       
            WAITER-AUTH-ID)                       
        >>                                        
                                                  
  WHERE ANY(WAITER-SUSPEND-ELAPSED > 30 SECONDS)  
                                                  
  TITLE = ('Current Lock Contentions')            
  FOCUS-KEY = NO                                  
  INTERVAL 15 seconds                             
  NEVENTS = 4                                     
  DATASHAREABLE                                   
  PRINT DSN ('PREFIX.DATA.SET.PRINT') NEW CYL SPACE(50,10)