Error while extracting load module details through REXX



IBM's Command List programming language & Restructured Extended Executor

Error while extracting load module details through REXX

Postby AMAR2016 » Fri Jun 10, 2016 6:24 pm

Hi Everyone.

This is my first post after lurking around for many years. I am facing following error while executing the rexx script.
As per the requirement we need to extract all member details and load module details from PDS along with date and time stamp in all environment.
For each PDS qualifier in input1 (from jcl), we have multiple qualifier in input 2 (from jcl) & For each qualifier in input2 (from jcl), we have multiple qualifier in input 3 (from jcl)
Code is running fine except when we select COBOL in input 3.
All selection are marked by ' * ' in sysin card of jcl.
Could you please guide me to fix the issue. Thank you.

Error Description-
READY                                                                
  ISPSTART CMD(REXXPGM)                                              
System abend code 878, reason code 00000016.                          
Recovery retry to module IRXEEXEC failed.                            
Abend in host command AMBLIST or address environment routine LINKMVS.
    99 *-*          ADDRESS LINKMVS "AMBLIST"                        
       +++ RC(-2168) +++                                              
System abend code 878, reason code 00000016.                          
Recovery retry to module IRXEEXEC failed.                            
Abend in host command AMBLIST or address environment routine LINKMVS.
       *-*          ADDRESS LINKMVS "AMBLIST"                        
       +++ RC(-2168) +++                                              
System abend code 878, reason code 00000016.                          
Recovery retry to module IRXEEXEC failed.                            
Abend in host command AMBLIST or address environment routine LINKMVS.
       *-*          ADDRESS LINKMVS "AMBLIST"                        
       +++ RC(-2168) +++                                              
       *-*          ADDRESS LINKMVS "AMBLIST"                
       +++ RC(-3) +++                                        
 FILE LOAD NOT FREED, DATA SET IS OPEN                        
 FILE SYSIN NOT FREED, DATA SET IS OPEN                      
 FILE SYSPRINT NOT FREED, DATA SET IS OPEN                    
    84 +++     MEM = LEFT(STRIP(SUBSTR(VAR.L,3,8)),8,' ')    
Error running REXXPGM, line 84: Machine storage exhausted    
ISPD117                                                      
The initially invoked CLIST ended with a return code = 20005  
READY                                                        
END                                                          
 


JCL-
//STEP01   EXEC PGM=IKJEFT01                              
//ISPPROF  DD DSN=&&ISPPROF,DISP=(,PASS),                
//            UNIT=SYSDA,SPACE=(CYL,(1,1,10),RLSE),      
//            RECFM=FB,LRECL=80                          
//ISPPLIB  DD DSN=SYS1.ISPPLIB,DISP=SHR                  
//ISPMLIB  DD DSN=SYS1.ISPMLIB,DISP=SHR                  
//ISPSLIB  DD DSN=SYS1.ISPSLIB,DISP=SHR                  
//ISPTLIB  DD DSN=SYS1.ISPTLIB,DISP=SHR                  
//ISPLOG   DD SYSOUT=*,DCB=(LRECL=125,RECFM=VBA)          
//SYSTSPRT DD SYSOUT=*,DCB=LRECL=125                      
//SYSTSPRT DD SYSOUT=*                                    
//SYSEXEC  DD DSN=X.Y.Z.REXX,DISP=SHR      
//INPUT1   DD *                                          
*AA                                                      
*BB                                                      
*CC                                                      
*DD                                                      
*EE                                                      
*FF                                                      
*GG                                                      
/*                                                        
//INPUT2   DD *                                                    
*DEV                                                                
*TEST                                                              
*UAT1                                                                
*UAT2                                                               
*PROD                                                             
/*                                                                  
//INPUT3   DD *                                                    
*PL1                                                                
*ASM                                                                
*BND                                                                
*COBOL                                                              
*CPY                                                                
*DBRM                                                              
*LOAD                                                              
*PSB                                                                
/*                                                                  
//OUTPUT1  DD DSN=A.B.C.REXX,DISP=(,CATLG,DELETE),
//            UNIT=SYSDA,SPACE=(CYL,(10,10),RLSE),    
//            DCB=(RECFM=FB,LRECL=150)                
//SYSTSIN  DD *                                      
  ISPSTART CMD(REXXPGM)                              
/*                                                    
//****************************************************
 


Code removed at user request
AMAR2016
 
Posts: 6
Joined: Mon Jun 06, 2016 12:48 pm
Has thanked: 0 time
Been thanked: 0 time

Re: Error while extracting load module details through REXX

Postby NicC » Fri Jun 10, 2016 7:07 pm

If you cared to look up the messages and codes manual for an S878 abend you would probably have the answer by now.
The problem I have is that people can explain things quickly but I can only comprehend slowly.
Regards
Nic
NicC
Global moderator
 
Posts: 3025
Joined: Sun Jul 04, 2010 12:13 am
Location: Pushing up the daisies (almost)
Has thanked: 4 times
Been thanked: 136 times

Re: Error while extracting load module details through REXX

Postby AMAR2016 » Fri Jun 10, 2016 7:20 pm

Hi NicC,

Thank you for the reply. i have executed with REGION=0M in job card yet it is running out of virtual memory.
i wanted to take suggestion, if any way i can optimize my existing rexx code before consulting with system admin with respect to Virtual memory.

Thank you.
AMAR2016
 
Posts: 6
Joined: Mon Jun 06, 2016 12:48 pm
Has thanked: 0 time
Been thanked: 0 time

Re: Error while extracting load module details through REXX

Postby prino » Fri Jun 10, 2016 9:26 pm

AMAR2016 wrote:Thank you for the reply. i have executed with REGION=0M in job card yet it is running out of virtual memory.

Ever thought of doing the obvious?

Like running the program on a single COBOL PDS?
Robert AH Prins
robert.ah.prins @ the.17+Gb.Google thingy
User avatar
prino
 
Posts: 641
Joined: Wed Mar 11, 2009 12:22 am
Location: Vilnius, Lithuania
Has thanked: 3 times
Been thanked: 29 times

Re: Error while extracting load module details through REXX

Postby steve-myers » Fri Jun 10, 2016 10:27 pm

There may be a program issue. I have a program that analyzes load modules like AMBLIST that does a VRC GETMAIN for 13 meg. I find that if I free storage at the end of the space the GETMAIN allocates I'm less likely to get this kind of trouble than if I free storage at the start of the allocated space. I still have trouble, though, when I run it in ISPF, especially if SDSF is also running.

IMO, AMAR2016 might be better off running AMBLIST in batch, routing the SYSPRINT to a real data set, and then turn his Rexx EXEC loose on the SYSPRINT data set.
steve-myers
Global moderator
 
Posts: 2105
Joined: Thu Jun 03, 2010 6:21 pm
Has thanked: 4 times
Been thanked: 243 times

Re: Error while extracting load module details through REXX

Postby AMAR2016 » Fri Jun 10, 2016 10:44 pm

Hi Prino,
yes, i did check with differnt PDS and it execute succesful but it is only failing for AMBLIST when cobol is selected with all input1. Please find result of below combination.
1. status = succesful
//INPUT1   DD *
OE            
 TJ            
 FK            
*PC            
*TN            
 PD            
 FO            
/*            
//INPUT2   DD *
*DEV          
*TEST          
*KVS          
*ABN          
*PROD          
/*            
//INPUT3   DD *
*ARC          
*ASM          
*BND          
*BNP          
*COBOL        
*COL        
*CPY        
*DBRM      
*FBS        
*LNK        
*LOAD      
*PSB        
/*          
 


2. Status = Succesful
//INPUT1   DD *
 OE            
 TJ            
 FK            
 PC            
 TN            
*PD            
*FO            
/*            
//INPUT2   DD *
*DEV          
*TEST          
*KVS          
*ABN          
*PROD          
/*            
//INPUT3   DD *
*ARC          
*ASM          
*BND          
*BNP          
*COBOL        
*COL        
*CPY        
*DBRM      
*FBS        
*LNK        
*LOAD      
*PSB        
/*          
 


3.status = succesful
//INPUT1   DD *
*OE            
*TJ            
*FK            
 PC            
 TN            
 PD            
 FO            
/*            
//INPUT2   DD *
*DEV          
*TEST          
*KVS          
*ABN          
*PROD          
/*            
//INPUT3   DD *
*ARC          
*ASM          
*BND          
*BNP          
*COBOL        
*COL        
*CPY        
*DBRM      
*FBS        
*LNK        
*LOAD      
*PSB        
/*  
 


4.status = ABEND (selecting maximum possible option)
//INPUT1   DD *
*OE            
*TJ            
*FK            
*PC            
*TN            
*PD            
*FO            
/*            
//INPUT2   DD *
*DEV          
*TEST          
*KVS          
*ABN          
*PROD          
/*            
//INPUT3   DD *
*ARC          
*ASM          
*BND          
*BNP          
*COBOL        
*COL        
*CPY        
*DBRM      
*FBS        
*LNK        
*LOAD      
*PSB        
/*          
 


5.STATUS = SUCEESFUL (Selecting all option except COBOL)
//INPUT1   DD *
*OE            
*TJ            
*FK            
*PC            
*TN            
*PD            
*FO            
/*            
//INPUT2   DD *
*DEV          
*TEST          
*KVS          
*ABN          
*PROD          
/*            
//INPUT3   DD *
*ARC          
*ASM          
*BND          
*BNP          
  COBOL        
*COL        
*CPY        
*DBRM      
*FBS        
*LNK        
*LOAD      
*PSB        
/*          
 


6. Status = ABEND (Selecting only COBOL for all input1)
//INPUT1   DD *
*OE            
*TJ            
*FK            
*PC            
*TN            
*PD            
*FO            
/*            
//INPUT2   DD *
*DEV          
*TEST          
*KVS          
*ABN          
*PROD          
/*            
//INPUT3   DD *
ARC          
 ASM          
 BND          
 BNP          
*COBOL        
 COL        
 CPY        
 DBRM      
 FBS        
 LNK        
 LOAD      
 PSB        
/*          
 


From above it is clear that for limited INPUT1, code is running succesful even with COBOL.

Thanks.
AMAR2016
 
Posts: 6
Joined: Mon Jun 06, 2016 12:48 pm
Has thanked: 0 time
Been thanked: 0 time

Re: Error while extracting load module details through REXX

Postby AMAR2016 » Fri Jun 10, 2016 10:52 pm

HI,

A small correction in my rexx code. The outer loop execute till C1 .


/* ALLOCATE PDS AND LIST ALL MEMBERS WITH REQUIRED DETAILS -1ST OWNER*/
DO I=1 TO C1                                                              
 DO J=1 TO C2                                                          
  ENV = LEFT(STRIP(SUBSTR(US2.J,1,4)),4,' ')                          
  DO K=1 TO C3                                                        
....
.....
 



Thank you.
AMAR2016
 
Posts: 6
Joined: Mon Jun 06, 2016 12:48 pm
Has thanked: 0 time
Been thanked: 0 time

Re: Error while extracting load module details through REXX

Postby NicC » Mon Jun 13, 2016 1:06 pm

The same topic on the experts' forum has been deleted. As you have been lurking both here and there you should know that the forums are connected and the same people assist on both fora.
The problem I have is that people can explain things quickly but I can only comprehend slowly.
Regards
Nic
NicC
Global moderator
 
Posts: 3025
Joined: Sun Jul 04, 2010 12:13 am
Location: Pushing up the daisies (almost)
Has thanked: 4 times
Been thanked: 136 times

Re: Error while extracting load module details through REXX

Postby AMAR2016 » Mon Jun 13, 2016 1:10 pm

sorry i did not know this..
AMAR2016
 
Posts: 6
Joined: Mon Jun 06, 2016 12:48 pm
Has thanked: 0 time
Been thanked: 0 time

Re: Error while extracting load module details through REXX

Postby enrico-sorichetti » Mon Jun 13, 2016 10:38 pm

... after lurking around for many years.

odd that after so much lurking You have not realized that the people replying here are the same replying there :o
cheers
enrico
When I tell somebody to RTFM or STFW I usually have the page open in another tab/window of my browser,
so that I am sure that the information requested can be reached with a very small effort
enrico-sorichetti
Global moderator
 
Posts: 3006
Joined: Fri Apr 18, 2008 11:25 pm
Has thanked: 0 time
Been thanked: 165 times

Next

Return to CLIST & REXX

 


  • Related topics
    Replies
    Views
    Last post