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 

REXX - Problem in using temporary dataset with REPRO

 
Post new topic   Reply to topic   printer-friendly view    MVSFORUMS.com Forum Index -> TSO and ISPF
View previous topic :: View next topic  
Author Message
Dibakar
Advanced


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

PostPosted: Mon Apr 28, 2003 5:39 am    Post subject: REXX - Problem in using temporary dataset with REPRO Reply with quote

Hi

While writing a record from KSDS VSAM file to a temporary dataset I am getting following error

Quote:
IEC141I 013-34,IGG0191I,INDDBK,TSOLOG,REQDBK,4A68,TMP009,SYS03118.T053152.RA000
.INDDBK.R0165623
IDC3300I ERROR OPENING SYS03118.T053152.RA000.INDDBK.R0165623
IDC3321I ** OPEN/CLOSE/EOV ABEND EXIT TAKEN
IDC0005I NUMBER OF RECORDS PROCESSED WAS 0
IDC0014I LASTCC=12

This is the code I am using -
Code:
"ALLOC F("reqname") NEW REUSE"
"REPRO  INFILE(IBMPRO) OUTFILE("reqname")
      FROMKEY('"key1"')
        TOKEY('"key1"')"

This is working fine with permanent dataset but not with temporary dataset.

Thanks,
Diba.
Back to top
View user's profile Send private message Send e-mail
Cogito-Ergo-Sum
Advanced


Joined: 15 Dec 2002
Posts: 637
Topics: 43
Location: Bengaluru, INDIA

PostPosted: Mon Apr 28, 2003 10:33 am    Post subject: Reply with quote

Diba,
Our inhouse quick ref tells me that your error code S013-34 stands for
Quote:
ONE OF THE FOLLOWING WAS DETECTED:
- AN OPEN MACRO WAS ISSUED FOR A DATASET WITH BLKSIZE AND BUFL EQUAL TO 0. THE SYSTEM DETERMINED THAT IT HAD TO OBTAIN BUFFERS BUT WAS UNABLE TO DO SO.
- RECFM WAS SPECIFIED WITH BOTH A AND M ATTRIBUTES.
- QSAM, LRECL=0 AND RECFM WAS NOT V OR VB.
- RECFM=V OR VB AND LRECL > (BLKSIZE-4).
- QSAM AND BLKSIZE=0. - RECFM NOT VARIABLE OR UNDEFINED AND LRECL > BLKSIZE.
- BFTEK=A,LRECL=0,RECFM=VBS.


Based on the above, maybe you would like to code the temporary dataset with some DCB parameters such as LRECL, RECFM, etc.
_________________
ALL opinions are welcome.

Debugging tip:
When you have eliminated all which is impossible, then whatever remains, however improbable, must be the truth.
-- Sherlock Holmes.
Back to top
View user's profile Send private message
semigeezer
Supermod


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

PostPosted: Mon Apr 28, 2003 2:49 pm    Post subject: Reply with quote

I too looked up the error in the IBM books (system codes, messages) but didn't find it too helpful so it is worth noting that temporary data sets sometimes have some odd quirks. For example, they often can not be allocated by name, at least through TSO's ALLOC command. That can cause problems in other programs as well. In this case it looks like whatever default attributes you are getting are not sufficent. Try adding attributes (lrecl, recfm, etc as needed). At least I'm curious, so let us know what you find.
Back to top
View user's profile Send private message Visit poster's website
moyeenkhan
Beginner


Joined: 04 Dec 2002
Posts: 64
Topics: 21

PostPosted: Mon Apr 28, 2003 3:09 pm    Post subject: Reply with quote

You can use REUSE with a permanent dataset only. For a temporary dataset, you may have to ALLOC with all the parameters.
Back to top
View user's profile Send private message Send e-mail
Dibakar
Advanced


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

PostPosted: Tue Apr 29, 2003 3:48 am    Post subject: Reply with quote

After reading all replies and detail error message supplied by Cogito I felt that it has something to do with record length, format and blocksize. So here is what worked and what didn't.

Same error with:
Code:
"ALLOC F("reqname") NEW LRECL(346) BLOCK(3460) RECFM(F) REUSE"


This worked for repro but failed at next EXECIO comand:
Code:
"ALLOC F("reqname") NEW LRECL(346) BLOCK(3460) REUSE"


Finally this worked:
Code:
"ALLOC F("reqname") NEW BLOCK(3460) RECFM(V) REUSE"


Fine, but my entire purpose of using temp datasets failed finally. Semigeezer once suggested, in another post, using temp datset to reduce i/o time. But my other program, doing the same stuff using existing permanent dataset seems to run a little faster.

Thanks everybody,
Diba.
Back to top
View user's profile Send private message Send e-mail
Mike
Beginner


Joined: 03 Dec 2002
Posts: 114
Topics: 0
Location: Sydney, Australia

PostPosted: Tue Apr 29, 2003 10:49 pm    Post subject: Reply with quote

Try RECFM (F,B) with the first two., the results might differ.
_________________
Regards,
Mike.
Back to top
View user's profile Send private message
semigeezer
Supermod


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

PostPosted: Wed Apr 30, 2003 12:35 am    Post subject: Reply with quote

Not necessarily temp data sets, but temp data sets allocated to UNIT=VIO.

Also, REUSE relates only to the ddname, not to the data set, so it works with both permanent and and temp data sets. It boils down to a DAIR call (which eventually becomes an SVC99) to free the ddname before the allocation is done.
Back to top
View user's profile Send private message Visit poster's website
Dibakar
Advanced


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

PostPosted: Wed Apr 30, 2003 5:59 am    Post subject: Reply with quote

I used UNIT(VIO) and RECF(F,B). Now I/Os are little faster but allocation of new temp dataset appears to take more time than that of exixsting dataset with 'SHR' option.

Thanks again,
Diba.
Back to top
View user's profile Send private message Send e-mail
Mike
Beginner


Joined: 03 Dec 2002
Posts: 114
Topics: 0
Location: Sydney, Australia

PostPosted: Mon May 12, 2003 11:10 pm    Post subject: Reply with quote

I would expect that to be the case. When creating a new dataset the volume has to be determined, the space earmarked for it's use the VTOC updated, the catalog updated. I've probably missed a few things as well. Whilst for an existing dataset the catalog, is searched and then dataset located, quite a bit less to do.
_________________
Regards,
Mike.
Back to top
View user's profile Send private message
Dibakar
Advanced


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

PostPosted: Tue May 13, 2003 10:04 am    Post subject: Reply with quote

Thanks Mike,

I never thought beyong allocating space. I didn't understand why would catalog be updated for temporary datasets? Could you suggest some reference to learn morer on this topic.

Regards,
Dibakar.
Back to top
View user's profile Send private message Send e-mail
semigeezer
Supermod


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

PostPosted: Tue May 13, 2003 7:55 pm    Post subject: Reply with quote

I think this thread is getting a bit strange. Temporary data sets do not end up in the catalog. They are in the VTOC of the volume only, but... unless the unit VIO is defined to real dasd, there is no writing to any real device other than memory and maybe a paging volume. VIO should be noticably faster. You can see if the allocation went to a real volume instead of VIO by using ISRDDN. It is not unusual for unit=vio to go to real DASD, but if it does, most of the performance benefits are gone. Also, if you are running on a 2nd level system (under VM), then VIO doesn't usually help quite as much as on real hardware.

(I'm a big fan of virtual I/O. When I had real the machine to myself, I used to put all of ISPF - panels, messages, ISPLLIB, etc., in VIO. Now that starts quickly!)
Back to top
View user's profile Send private message Visit poster's website
Dibakar
Advanced


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

PostPosted: Wed May 14, 2003 2:48 am    Post subject: Reply with quote

semigeezer,

As you suspected, allocation did not go to VIO.

Thanks,
Dibakar.
Back to top
View user's profile Send private message Send e-mail
semigeezer
Supermod


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

PostPosted: Wed May 14, 2003 10:10 am    Post subject: Reply with quote

My pleasure. It is always a little bizzare when the 'system' doesn't do exactly what you asked it to do but what it does is technically correct. Hmmmmmm Rolling Eyes
Back to top
View user's profile Send private message Visit poster's website
Mike
Beginner


Joined: 03 Dec 2002
Posts: 114
Topics: 0
Location: Sydney, Australia

PostPosted: Thu May 15, 2003 7:18 pm    Post subject: Reply with quote

Dibkar,
ooops I didn't read the question properly obviously temp datasets don't get catalogged. Embarassed
_________________
Regards,
Mike.
Back to top
View user's profile Send private message
Dibakar
Advanced


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

PostPosted: Fri May 16, 2003 1:12 am    Post subject: Reply with quote

No problem. Anyway your answer remains valid since my allocation did not go to VIO.

Dibakar.
Back to top
View user's profile Send private message Send e-mail
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
Page 1 of 1

 
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