Portal | Manuals | References | Downloads | Info | Programs | JCLs | Mainframe wiki | Quick Ref
IBM Mainframe Computers Forums Index
 
Register
 
IBM Mainframe Computers Forums Index Mainframe: Search IBM Mainframe Forum: FAQ Memberlist Profile Log in to check your private messages Log in
 
What causes "NULLFILE was preallocated (no free was don

 
Post new topic   Reply to topic    IBMMAINFRAMES.com Support Forums -> CLIST & REXX
View previous topic :: :: View next topic  
Author Message
Ed Goodman

Active Member


Joined: 08 Jun 2011
Posts: 556
Location: USA

PostPosted: Wed Nov 16, 2011 1:23 am    Post subject: What causes "NULLFILE was preallocated (no free was don
Reply with quote

Running a REXX in batch, it is using ISPF library services. I have the dataset in the JCL and am using the DDNAME parm for the services (see below).

Code:

/* REXX */       
/* TRACE ALL */ 
ADDRESS ISPEXEC 
"LMINIT DATAID(PDSIN) DDNAME(PDSIN)"                           
"LMINIT DATAID(MEMLIST) DDNAME(MEMLIST)"                       
"LMOPEN DATAID("PDSIN")"                                       
"LMOPEN DATAID("MEMLIST") OPTION(OUTPUT)"                       
DO FOREVER                                                     
  "LMMLIST DATAID("PDSIN") OPTION(LIST) MEMBER(MEM) STATS(YES)"
  IF RC <> 0 THEN LEAVE                                         
  "LMPUT DATAID("MEMLIST") MODE(INVAR) DATALOC(MEM) DATALEN(80)"
END                                                             
"LMMLIST DATAID("PDSIN") OPTION(FREE)"
"LMCLOSE DATAID("PDSIN")"               
"LMCLOSE DATAID("MEMLIST")"
EXIT 0                             


I'm not boxed in to using the ISPF library services or anything. So I can change this to whatever works.

If I remember correctly, if this were CLIST-type commands, the fix would be to not have the ALLOC/FREE statements. However, the DATAID value needs to be determined, so I need the LMINIT.

Also, the process actually works fine, I just want to know what is causing the message and try to get rid of it.

So... why is it popping up?
Back to top
View user's profile Send private message

Ed Goodman

Active Member


Joined: 08 Jun 2011
Posts: 556
Location: USA

PostPosted: Wed Nov 16, 2011 1:33 am    Post subject:
Reply with quote

Here is the JCL I used:
Code:

//JS010   EXEC PGM=IKJEFT01                                 
//PDSIN    DD DSN=WTSO.WNEG.COPYBOOK,DISP=SHR           
//MEMLIST  DD DSN=&&MEMLIST,DISP=(,PASS),                   
//            UNIT=SYSDA,SPACE=(TRK,1),LRECL=80,RECFM=FB,   
//            BLKSIZE=80,DSORG=PS                           
//SYSEXEC  DD DSN=WTSO.WNEG.JCL,DISP=SHR                   
//SYSPROC  DD DSN=WTSO.WNEG.JCL,DISP=SHR                   
//ISPPLIB  DD DSN=ISP.SISPPENU.NONTECH,DISP=SHR             
//         DD DSN=ISP.SISPPENU,DISP=SHR                     
//ISPMLIB  DD DSN=ISP.SISPMENU,DISP=SHR                     
//ISPSLIB  DD DSN=ISP.SISPSENU,DISP=SHR                     
//         DD DSN=ISP.SISPSLIB,DISP=SHR                     
//ISPTLIB  DD DSN=ISP.SISPTENU,DISP=SHR                     
//ISPLIST  DD SYSOUT=*                                     
//ISPLOG   DD DUMMY                                         
//ISPPROF  DD DISP=(NEW,PASS),DSN=&&ISPPROF,               
//         SPACE=(TRK,(10,10,5)),UNIT=SYSDA,               
//         DCB=(LRECL=80,BLKSIZE=0,DSORG=PO,RECFM=FB)       
//SYSTSPRT DD SYSOUT=*                                     
//SYSTSIN  DD *                                             
ISPSTART CMD(%MEMLISTR) NEWAPPL(ISP) BDISPMAX(9999)         
/*                                                   
//SYSPRINT DD SYSOUT=*                               
//SYSTERM  DD SYSOUT=*                               
//SYSUDUMP DD SYSOUT=*                               
//SDSFDUMP DD SYSOUT=*                               
//SYSOUT   DD SYSOUT=*                               
//AMSDUMP  DD SYSOUT=*                               
//SYSDBOUT DD SYSOUT=*                               
//SYSABEND DD SYSOUT=*                               
//SYSIN    DD *                                       
/*                                                   


I also had
Code:

//SYSIN    DD DUMMY                                       
Back to top
View user's profile Send private message
Akatsukami

Global Moderator


Joined: 03 Oct 2009
Posts: 1775
Location: Bloomington, IL

PostPosted: Wed Nov 16, 2011 2:07 am    Post subject:
Reply with quote

It seems that ISPF issues this message if data sets that it would allocate dynamically have already been allocated statically, i.e., in the JCL. You should have searched the fine Web first icon_wink.gif
Back to top
View user's profile Send private message
Pedro

Senior Member


Joined: 01 Sep 2006
Posts: 2083
Location: Silicon Valley

PostPosted: Wed Nov 16, 2011 2:56 am    Post subject: Reply to: What causes "NULLFILE was preallocated (no fr
Reply with quote

Quote:
So I can change this to whatever works.

There is a defect in your code... it has no comments to describe what you are trying to do.

Suggestion- instead of getting them one-by-one, with OPTION(LIST), get them all at once by using OPTION(SAVE).
Back to top
View user's profile Send private message
Ed Goodman

Active Member


Joined: 08 Jun 2011
Posts: 556
Location: USA

PostPosted: Wed Nov 16, 2011 3:15 am    Post subject:
Reply with quote

Oh I did search the web, but that link did NOT come up because I was too literal.
I used quotes:
"NULLFILE was preallocated (no free was done)"
in the google search box, and it filtered out that result.

A big difference when it's "NULLFILE" too. There isn't a way to track it back to a DD like there is when you get the temp name.
Back to top
View user's profile Send private message
Mickeydusaor

Active User


Joined: 24 May 2006
Posts: 258
Location: Salem, Oregon

PostPosted: Wed Nov 16, 2011 3:31 am    Post subject:
Reply with quote

if you just want to get rid of the message add the following to you Rexx.

XMSG = MSG('OFF') at the start of your Rexx.

XMSG = MSG('ON') at the end of your Rexx.
Back to top
View user's profile Send private message
Akatsukami

Global Moderator


Joined: 03 Oct 2009
Posts: 1775
Location: Bloomington, IL

PostPosted: Wed Nov 16, 2011 5:49 am    Post subject:
Reply with quote

Mickeydusaor wrote:
if you just want to get rid of the message add the following to you Rexx.

XMSG = MSG('OFF') at the start of your Rexx.

XMSG = MSG('ON') at the end of your Rexx.

No, that message is generated after the exec is exited.[/list]
Back to top
View user's profile Send private message
Ed Goodman

Active Member


Joined: 08 Jun 2011
Posts: 556
Location: USA

PostPosted: Wed Nov 16, 2011 8:00 am    Post subject:
Reply with quote

I experimented a bit after reading the provided link. When I changed the ISPLOG file not not be 'DUMMY', the message changed from "NULLFILE" to the temp file name.

If I take it out, I get the message that the normal log file name was kept.

Since I know what it is, I'll just live with it and put some comment in there to remind me later why that warning message is appearing.

I also went back and checked to see why the CLIST stuff didn't get the message. Say it with me...I WASN'T RUNNING ISPF!

Thanks for the link though, it did the trick.
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 -> CLIST & REXX All times are GMT + 6 Hours
Page 1 of 1

 

Search our Forum:

Similar Topics
Topic Author Forum Replies Posted
This topic is locked: you cannot edit posts or make replies. Extract all "IF" Statements... Adarsh Damodaran CLIST & REXX 1 Wed Sep 06, 2017 9:28 am
No new posts Changeman get multiple "Browse C... elixir1986 Compuware & Other Tools 4 Fri Jul 14, 2017 1:48 am
No new posts Include/omit with "ALL" pa... mgl DFSORT/ICETOOL 6 Wed Jun 14, 2017 2:31 pm
No new posts READ A PACKED "NEGATIVE" FI... jdesouza CA Products 3 Tue May 02, 2017 11:43 pm
No new posts RC 20 for Address ISPEXEC "ISRED... pkmurali CLIST & REXX 3 Sun Apr 16, 2017 11:30 pm

Facebook
Back to Top
 
Job Vacancies | Forum Rules | Bookmarks | Subscriptions | FAQ | Polls | Contact Us