Portal | Manuals | References | Downloads | Info | Programs | JCLs | Master the Mainframes
IBM Mainframe Computers Forums Index
 
Register
 
IBM Mainframe Computers Forums Index Mainframe: Search IBM Mainframe Forum: FAQ Memberlist Usergroups Profile Log in to check your private messages Log in
 

 

Clean up of external variables.

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> IMS DB/DC
View previous topic :: :: View next topic  
Author Message
casgarcia

New User


Joined: 06 May 2009
Posts: 21
Location: Madrid

PostPosted: Tue Nov 17, 2009 2:47 pm    Post subject: Clean up of external variables.
Reply with quote

Hi all,
A Cobol external variable is alive while the run unit that it belong to is alive.
So in a batch job the storage reserved for the external variable will be available during the live of the batch job and this area will be freed when the job ends.

But what is the case when the cobol program is executing under IMS?

The run unit under IMS finish when IMS is stopped, so how can a external varialbe in IMS storage be refreshed without shut down IMS?
Suppose that you want to increas the size of a external varialbe already in IMS storage, how it can be done?

Regards.
Casmir. icon_redface.gif icon_redface.gif
Back to top
View user's profile Send private message

dick scherrer

Site Director


Joined: 23 Nov 2006
Posts: 19270
Location: Inside the Matrix

PostPosted: Tue Nov 17, 2009 8:41 pm    Post subject:
Reply with quote

Hello,

As there have been no replies, i moved this topic to the IMS part of the forum.

Please let me know later if you'd rather it be put back in the COBOL part of the forum.
Back to top
View user's profile Send private message
Gary Jacek

New User


Joined: 17 Dec 2007
Posts: 48
Location: Victoria, BC, Canada

PostPosted: Tue Nov 24, 2009 2:39 am    Post subject:
Reply with quote

Hello Casmir

If your application with EXTERNAL variable is running as an IMS MPP, then you need to know more about IMS transaction scheduling and program load to answer this question.

When the IMS transaction scheduler has chosen a MPR (Message Processing Region) for your transaction, in the simplest case, the MPR will load your application load module from //JOBLIB, //STEPLIB or LINKLIST.

Your application gets control, uses GU to IOPCB to get and process all input transactions for this application load module, gets a QC status code on the final GU to the message queue, and terminates.

At this point, your load module -MAY- be retained in MPR storage.

If the application load module is linked as REUSable, it may remain in the MPR-allocated storage until space is needed to load some other application load module(s).

If the application load module is on the MPR Preload List (IMS.PROCLIB member DFSMPLxx) and is linked REUS, then it is loaded once when the MPR starts and remains in storage until the MPR shuts down, hours, days or weeks later.

In a code/test and bomb environment, you could link your application as NON-REUSABLE in order to force a module load every time. This will allow you to change your EXTERNAL variables (and other code) and see the results immediately.

Once you have optimized your code, relink your application as REUSable in order to complete module reusability testing. This step is critical.

In production, you definitely want to link REUSABLE as program load is costly and slows down production IMS.
Back to top
View user's profile Send private message
casgarcia

New User


Joined: 06 May 2009
Posts: 21
Location: Madrid

PostPosted: Mon Nov 30, 2009 2:05 pm    Post subject:
Reply with quote

Hi Gary,
Many thanks for your convincing answer.

Regards.
Casmir.
Back to top
View user's profile Send private message
View previous topic :: :: View next topic  
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> IMS DB/DC All times are GMT + 6 Hours
Page 1 of 1

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
No new posts DB2 9.1.0 not move values to Host-Var... Miguel Fernandez DB2 8 Wed Jan 25, 2017 8:24 pm
No new posts DB2 9.1.0 not move values to Host-Var... Miguel Fernandez DB2 0 Wed Jan 25, 2017 8:23 pm
No new posts DB2 9.1.0 not move values to Host-Var... Miguel Fernandez DB2 0 Wed Jan 25, 2017 8:21 pm
No new posts Protection Exception while move 0 to ... Kevin Vaz CICS 10 Tue Oct 18, 2016 4:19 pm
No new posts Compiler option for override the exte... muralikrishnan_new COBOL Programming 9 Fri Jul 08, 2016 12:09 pm


Facebook
Back to Top
 
Mainframe Wiki | Forum Rules | Bookmarks | Subscriptions | FAQ | Tutorials | Contact Us