At 07:16 -0700 on 04/05/2012, Mike Kovach wrote about A deep question
about VSAM SHR(4) - can you help?:
I have a VSAM KSDS CLUSTER which is written to by ONLY ONE PROGRAM
in ONLY ONE CICS REGION. Currently, this file is defined in
CICS with STRNO(1). The file is defined with SHR(4,3) because while
being written ONLY in CICS, it is being read by a non-reentrent
ASSEMBLER program running in BATCH. SHR 4 forces VSAM to harden
each I/O (yeah, I know!) so the BATCH gets the current information.
Please spare me all the comments about how poor this solution is as
it stands. It has been in place for decades and due to a myriad of
reasons, the philosophy CANNOT change. My specific question is
this: I want to introduce multi tasking so that 5 copies of the
program can update the file concurrently. If we change STRNO(1) to
STRNO(5) on the CICS FCT Definition, will VSAM be smart enough to
manage the writes to the file so we don't break it and the BATCH
still gets the current information?
So long as you are still using one CICS Region, I do not think you
will run into problems. The STRNO(5) will allow you to have 5 CIs
being updated at a time (one CI per copy of the program). If more
than one copy attempts to access records from the same CI, it should
cause the subsequent requesters to wait for the owning copy to finish
its update and release/write the CI (just make sure that all your
VSAM is being done by SubTasks which I think CICS does
automatically). You should increase the number of buffers so there
are enough for all the copies.
I am interested in any discussion you might share, but I am most
interested in a specific reference to a reliable document. Please
help. Thanks Mike Kovach
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN