> -----Original Message-----
> From: IBM Mainframe Discussion List 
> [mailto:[EMAIL PROTECTED] On Behalf Of Arie Kremer
> Sent: Tuesday, February 27, 2007 12:21 AM
> To: [email protected]
> Subject: Re: KSDS immedial write
> 
> 
> I hope your boss was together with the end users. Less trouble.
> If no split can occur, does it mean that I cannot add keys to 
> the middle but
> only in the sorted order? Or only that another processes are not aware
> about, therefore DISP=OLD. Meaning only one process can open 
> the cluster
> simultaneously.
> It's acceptable for me that only one process opens the 
> cluster but I prefer
> a distributed owning, where  each server performs (ENQ  
> anything DEQ ). But
> which anything is possible (DISP=OLD seems to mean - empty)?
> 

This is a difficult scenario and one with which I am not very
conversant. My usual response here to somebody who want this is to point
them to the books and tell them "Good Luck! You'll need it!!!" and also
tell them that when their file is destroyed, it is THEIR problem, not
MINE. In other words, I regard this as a very difficult thing to do
correctly and I know that I don't know enough to make it work myself.

No CI or CA split means just that. If there is room in a CI to insert
the record, then the add will work. If there is not room in the CI, then
the add will fail with 'out of space' (if I remember correctly).

One thing that I did in the past where I had to "share" a VSAM KSDS
control file amoung many TSO users was to use SHAREOPTIONS(1 2) and
DISP=SHR. However, my code would always do the following:

ENQ on the KEY with some QNAME that I made up
ENQ on the DSN with a different QNAME that I made up
OPEN the file
READ the data
CLOSE the file (this flushes the buffers)
DEQ the DSN with the QNAME that I made up
do what I need with the data in the record
ENQ on the DSN as above
OPEN the file
READ the record again for UPDATE
REWRITE the record
CLOSE the file
DEQ the DSN
DEQ the KEY

I only meantion this because you mentioned "servers" as if this file is
to be somehow shared. That is a new "requirement" <grin>.

I again mention that this is a very difficult, to me, process. VSAM is
not designed to do this sort of thing. You really need a database such
as DB2 or even IMS.

--
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