MVSFORUMS.com Forum Index MVSFORUMS.com
A Community of and for MVS Professionals
 
 FAQFAQ   SearchSearch   Quick Manuals   RegisterRegister 
 ProfileProfile   Log in to check your private messagesLog in to check your private messages   Log inLog in 

Error: Unable to obtain storage during the REXX exec load
Goto page 1, 2  Next
 
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> TSO and ISPF
View previous topic :: View next topic  
Author Message
Phantom
Data Mgmt Moderator
Data Mgmt Moderator


Joined: 07 Jan 2003
Posts: 1056
Topics: 91
Location: The Blue Planet

PostPosted: Thu Jul 21, 2005 12:39 am    Post subject: Error: Unable to obtain storage during the REXX exec load Reply with quote

Hi all,

I am experiencing a weird problem in our mainframe system. Our shop uses IBM Personal communications as the Mainframe frontend tool. I am facing few problems running my REXX routines (which were running absolutely fine in my previous shop).

I have a REXX pgm which throws up a panel that lists 25 dataset names that I use frequently. On the first invocation, everything works fine. But if I have my panel active in one screen and If I try to invoke the same routine in another logical screen, I get the following error.

Code:

 Unable to obtain storage during the REXX exec load function, LOAD.
     71 +++ CALL EAZYEDIT ARGUMENTS                                 
 Error running EZ, line 71: Routine not found


EZ is my REXX program which inturn invokes another subroutine called EAZYEDIT.

Could you please help me in resolving this issue. Is my program eating up all the memory ? or is there any memory constraints in my shop ?

Thanks,
Phantom
Back to top
View user's profile Send private message
Phantom
Data Mgmt Moderator
Data Mgmt Moderator


Joined: 07 Jan 2003
Posts: 1056
Topics: 91
Location: The Blue Planet

PostPosted: Mon Jul 25, 2005 12:33 am    Post subject: Reply with quote

I think that the problem is only with the REXX CALL statement. B'cas I have some other standalone tools without any sub-program calls and I don't find any problem with multiple simultaneous invocations of these tools.

Is there any command to free unused memory before invoking a sub-program ?

Any help extended would be highly appreciated.

Regards,
Phantom
Back to top
View user's profile Send private message
semigeezer
Supermod


Joined: 03 Jan 2003
Posts: 1014
Topics: 13
Location: Atlantis

PostPosted: Mon Jul 25, 2005 9:45 am    Post subject: Reply with quote

is EAZYEDIT a rexx routine or a compiled program? If it is a program, then you need the TSO CALL statement, not the Rexx one.

Does EAZYEDIT use VSAM or anything else that shares subpool 0? If so, it will fail in ISPF (you can't keep a VSAM file open in 2 split screens).
Back to top
View user's profile Send private message Visit poster's website
Phantom
Data Mgmt Moderator
Data Mgmt Moderator


Joined: 07 Jan 2003
Posts: 1056
Topics: 91
Location: The Blue Planet

PostPosted: Tue Jul 26, 2005 1:16 am    Post subject: Reply with quote

Semigeezer,

1. EAZYEDIT is a REXX routine - not a compiled program.
2. EAZYEDIT does not use any VSAM files.
3. Before invoking EAZYEDIT, I verify if the calling program EZ is opened in ISR profile. If not, I use the following ISPEXEC command to open it in ISR profile pool. Could this be a problem ? If so, how do I correct this ? (As mentioned, this code was working perfectly in my previous shop).

Code:

 "ISPEXEC VGET ZAPPLID PROFILE SHARED"               
  CMD = '%EZ '||ARGUMENTS                             
  IF ZAPPLID <> 'ISR' THEN                           
   DO                                                 
       "ISPEXEC SELECT CMD("CMD") NEWAPPL(ISR)"       
        EXIT 0                                       
   END                                               
   ......
   ......
   CALL EAZYEDIT ARGUMENTS                                                   


Thanks & Regards,
Phantom
Back to top
View user's profile Send private message
Dibakar
Advanced


Joined: 02 Dec 2002
Posts: 700
Topics: 63
Location: USA

PostPosted: Tue Jul 26, 2005 3:17 am    Post subject: Reply with quote

Quote:

On the first invocation, everything works fine. But if I have my panel active in one screen and If I try to invoke the same routine in another logical screen, I get the following error.


Are you using altlib? i had similar problem with altlib.
Back to top
View user's profile Send private message Send e-mail
Phantom
Data Mgmt Moderator
Data Mgmt Moderator


Joined: 07 Jan 2003
Posts: 1056
Topics: 91
Location: The Blue Planet

PostPosted: Wed Jul 27, 2005 6:38 am    Post subject: Reply with quote

Thanks Dibakar,

But I am not sure how the system libraries are concatenated during logon. TSO ALTLIB DISPLAY shows me to libraries SYSEXEC (REXX) & SYSPROC (CLIST). I remember having the same in my previous shop.

Did u find a way to solve the problem ?

Thanks,
Phantom
Back to top
View user's profile Send private message
taltyman
JCL Forum Moderator
JCL Forum Moderator


Joined: 02 Dec 2002
Posts: 310
Topics: 8
Location: Texas

PostPosted: Wed Jul 27, 2005 7:45 am    Post subject: Reply with quote

Curiosity question? Does easyedit do anything different than ispexec edit, just wondering? I understand the displaying your favorite datasets part although I use IBMs provided ISPF services for that.
Back to top
View user's profile Send private message
Phantom
Data Mgmt Moderator
Data Mgmt Moderator


Joined: 07 Jan 2003
Posts: 1056
Topics: 91
Location: The Blue Planet

PostPosted: Thu Jul 28, 2005 12:20 am    Post subject: Reply with quote

Ok. Here are the features of Eazyedit that are not provided by IBM ISPF services.

First of all EAZYEDIT Throws up a screen like this.

[code:1:e8c69082bc]
Esssssssssssssssssssssss EAZY EDIT - ADVANCED OPTIONS ssssssssssssssssssssssssN
e COMMAND ===> e
e e
e MEMBER NAME : DATASET NUMBER : 23 e
e DATASET LIST : MODE (E / V / B) : V e
e DATASET NAMES e
e 01) ENDEVOR.PROD.PROCLIB V 02) e
e 03) 04) e
e 05) 06) e
e 07) 08) e
e 09) 10) e
e 11) ENDEVOR.PROD.EXECJCL E 12) ENDEVOR.PROD.SOURCE.OUTPUT E e
e 13) ENDEVOR.PROD.CNTLCARD V 14) ENDEVOR.PROD.COPYLIB E e
e 15) 16) e
e 17) 18) e
e 19) e
e 20)
Back to top
View user's profile Send private message
Dibakar
Advanced


Joined: 02 Dec 2002
Posts: 700
Topics: 63
Location: USA

PostPosted: Thu Jul 28, 2005 3:15 am    Post subject: Reply with quote

Quote:

Thanks Dibakar,

But I am not sure how the system libraries are concatenated during logon. TSO ALTLIB DISPLAY shows me to libraries SYSEXEC (REXX) & SYSPROC (CLIST). I remember having the same in my previous shop.

Did u find a way to solve the problem ?


Probably my problem was not same, I don't remember it exactly. Still, what I did was to put altlib command in my rexx routine.
Back to top
View user's profile Send private message Send e-mail
Phantom
Data Mgmt Moderator
Data Mgmt Moderator


Joined: 07 Jan 2003
Posts: 1056
Topics: 91
Location: The Blue Planet

PostPosted: Thu Jul 28, 2005 5:41 am    Post subject: Reply with quote

Today, I experienced another strange problem. I have a ISREDIT MACRO named 'XC' to expand all copybooks in a program. I get the same error (mentioned above) when I try to invoke the macro on a member opened in edit/view mode.

But the strange thing is that, even the first line of the macro is not getting executed.

Code:

/*    REXX    */
"ISREDIT MACRO (OPTION)"
SAY 'hi....'
......
......



Here I don't even get the HI message, meaning the error occurs even before the first executable line of the code.

Could someone help me out ?

Thanks,
Phantom
Back to top
View user's profile Send private message
Phantom
Data Mgmt Moderator
Data Mgmt Moderator


Joined: 07 Jan 2003
Posts: 1056
Topics: 91
Location: The Blue Planet

PostPosted: Thu Jul 28, 2005 6:05 am    Post subject: Reply with quote

Finally I found out the problem. The program ends in an error if the no. of lines is more. The XC code had 1482 lines (including comments). I deleted 1000 lines from this code and ran the macro. This time it worked fine.

Now, can someone guide me how do I run the macro without deleting the executable portion ?

Thanks,
Phantom
Back to top
View user's profile Send private message
nevilh
Beginner


Joined: 11 Aug 2004
Posts: 115
Topics: 0

PostPosted: Thu Jul 28, 2005 6:28 am    Post subject: Reply with quote

Quote:
For an analysis intensive project we found that over a period of 8 hours (working hours/day) a developer invokes the 3.4 panel nearly 200-300 times/day. So multiplying the 10 seconds gain factor over 3.4 panel, he spends 3000 seconds/day (i.e nearly 55 to 60 minutes/day) just in opening datasets. Meaning he wastes nearly 1 hour for every 8 hour just in typing which Eazyedit saves.

Find it difficult to believe that someone can work productively and open a different dataset every 2 minutes. Also appears that eazyedit does not add much more than the standard reflist functions
Back to top
View user's profile Send private message
Phantom
Data Mgmt Moderator
Data Mgmt Moderator


Joined: 07 Jan 2003
Posts: 1056
Topics: 91
Location: The Blue Planet

PostPosted: Thu Jul 28, 2005 8:30 am    Post subject: Reply with quote

Quote:

eazyedit does not add much more than the standard reflist functions


1. Reflist stores 30 recently used datasets. but Ez is used to store 25 frequently used datasets.

2. You need to traverse couple of screens to show the reflist screen whereas EZ can do everything from command prompt.

3. We tested this tool against reflist, 3.4, edit/view screen and we proved that it works faster than anything.

I am not saying this to defend myself, but we have put so much thought into this tool before building and also proved that this saves you lot of time (which really goes unnoticed).

For your satisfaction, just try to open a member using REFLIST and let me know how much time you take (monitor using Stop watch). Just see if you can do that within 3 seconds.

Thanks,
Phantom
Back to top
View user's profile Send private message
Phantom
Data Mgmt Moderator
Data Mgmt Moderator


Joined: 07 Jan 2003
Posts: 1056
Topics: 91
Location: The Blue Planet

PostPosted: Fri Jul 29, 2005 5:30 am    Post subject: Reply with quote

The bigger the macro, more time it takes to execute and if the macro is a bit too huge then ISPF ends in error (shown above - Unable to Allocate memory). So, its not something to do with my code, rather something has to be done before the macro/rexx code invocation.

Any suggestions ?

Thanks,
Phantom
Back to top
View user's profile Send private message
nevilh
Beginner


Joined: 11 Aug 2004
Posts: 115
Topics: 0

PostPosted: Fri Jul 29, 2005 7:48 am    Post subject: Reply with quote

What is your region size?
Back to top
View user's profile Send private message
Display posts from previous:   
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> TSO and ISPF All times are GMT - 5 Hours
Goto page 1, 2  Next
Page 1 of 2

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum


MVSFORUMS
Powered by phpBB © 2001, 2005 phpBB Group