> -----Original Message-----
> From: IBM Mainframe Discussion List 
> [mailto:[EMAIL PROTECTED] On Behalf Of Paul Gilmartin
> Sent: Wednesday, April 09, 2008 7:47 PM
> To: IBM-MAIN@BAMA.UA.EDU
> Subject: Re: TIOT filling up: too many dynamic concatenations
> 
> 
> On Wed, 9 Apr 2008 19:13:19 -0400, Jim Mulder wrote:
> >
> >  Is it necessary to concatenate all of the files?  Could you
> >restructure the program so that it allocates, opens, reads, closes,
> >and unallocates each file sequentially?  If the purpose is simply
> >to read and process all of the records in all of the files, it would
> >seem that this would accomplish the same objective, and the records
> >would be processed in the same order.
> >
> How would the performance of a scheme that "allocates, opens, reads,
> closes, and unallocates each file sequentially" (or concatenated,
> which still does most of the same work) compare with allocating
> a single POSIX pipe and using BPX1* system calls to copy the
> various NFS files into it?  My gut feeling is that Unix System
> services is the big winner here.  The NFS files must be opened,
> read, and closed either way; why add the overhead of allocation,
> unallocation, and z/OS OPEN and CLOSE?
> 
> -- gil

Well, iffin it twere me, I'd replace the QSAM logic with directly
reading the UNIX file using UNIX facilities (BPX1OPN / BPX1RED /
BPX1CLO) . But I don't know how much work the OP wants / has time to do.
Sometimes doing the minimal change is the best. Other times, it is
better to simply bite the bullet and rewrite. And doing QSAM I/O does
avoid some problems with the LF or CRLF at the end of the logical
records. They would be presented with the BPX1RED, but not with QSAM.
And QSAM, I think, will pad short records to the LRECL for RECFM=FB or
emulate the RDW for RECFM=VB files.

>From my understanding, and I can easily be wrong, doing the I/O via the
UNIX subroutines does not do any sort of DYNALLOC. I am fairly sure that
all the I/O is somehow done by the OMVS task. Much like the I/O is done
by the DB2 system and not the job doing the SELECT statements. Of
course, this does lengthen the path length due to the need to talk to
the OMVS system. I don't know how that is actually done. My uneducated
guess would be with some sort of ss-PC routine. But OCO forbids me from
actually knowing how anything works. Wouldn't want the unwashed masses
to know too much, now would we?

--
John McKown
Senior Systems Programmer
HealthMarkets
Keeping the Promise of Affordable Coverage
Administrative Services Group
Information Technology

The information contained in this e-mail message may be privileged
and/or confidential.  It is for intended addressee(s) only.  If you are
not the intended recipient, you are hereby notified that any disclosure,
reproduction, distribution or other use of this communication is
strictly prohibited and could, in certain circumstances, be a criminal
offense.  If you have received this e-mail in error, please notify the
sender by reply and delete this message without copying or disclosing
it. 

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [EMAIL PROTECTED] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to