I think it is well known and probably documented (perhaps not with stunning 
clarity) that you cannot write to two members of a PDS (non-E) at once. 

Charles

-----Original Message-----
From: IBM Mainframe Discussion List [mailto:[email protected]] On Behalf 
Of Paul Gilmartin
Sent: Saturday, December 10, 2016 12:13 PM
To: [email protected]
Subject: Re: FTP serialization when writing PDS/PDSE members

On Tue, 6 Dec 2016 18:27:58 -0600, Kirk Wolf wrote:

>There are two SPFEDIT enqs required to follow the protocol.   The data set
>one (without member) is used to serialize during actual I/O.    You aren't
>seeing that while transferring with FTP, which is why I believe that 
>the actual I/O is being deferred.
> 
Now this is interesting.  I have an EXEC using LM services that LMOPENs several 
DCBs  on the same DDNAME; writes several lines with LMPUT to each, interleaved, 
then does LMMREP (STOW?) on each.

If the data set is a PDSE, each LMMREP creates a directory entry for the 
corresponding member and the content of each member is what I apparently wrote 
to it.  Excellent exploitation of the ability, new with PDSE to write seveal 
members concurrently.

If the data set is a PDS, no error is reported I get the same several directory 
entries.  The content of all members is identical, matching the last member I 
LMMREPed.  (Is there an easy way (i.e. without
assembler) to see theTTRs?)  Ouch!  WAD?  Caveat emptor, I guess.

LM services requires EXC ENQ on SYSDSN to do this, whether PDS or PDSE, thereby 
prohibiting cross-job exploitation of PDSE capability.

So with SPFEDIT ENQ FTP might write directly to PDSE members, but deferring the 
I/O would be needed for PDS.

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN

Reply via email to