My main background is z/VSE but now I have to manage a bunch of z/OS sites, including one that recently converted from z/VSE to z/OS.

On z/VSE, share-option 4 means that VSAM will prevent any read or write integrity exposures when multiple tasks are accessing the same VSAM file.

z/VSE VSAM will internally lock any CI that is being updated so that nobody else can update the CI. This ENQ/DEQ is handled by the IBM provided VSAM IO routines at the task level. Additionally, VSAM will flush all update buffers after a write or update. And, it will not buffer reads when reading a share-option 4 file. (I am being somewhat general in the descriptions, so the details are a little more complicated.) All this to make sure that the records on disk and the records in buffers match.

Now, with z/OS, my reading of the VSAM Demystified RedBook leads me to the following: 1) Share-option 4 allows multiple open for update, but expects the program, not the VSAM subsystem, to perform the ENQ/DEQs. 2) If a program does not perform ENQ/DEQs, then data integrity is lost as multiple tasks can update the same record concurrently. 3) VSAM/RLS is one way to protect the data, but that is another can of worms.

Am I understanding the z/OS side correctly?

--
Tony Thigpen

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

Reply via email to