We have a daily deadlock problem in our CICS "fcxcwait" Would you happen to know what is causing this deadlock?
This is a wait engenderded by VSAM ( error code x'0814' if you want to look it up in the VSAM manuals) because of a Control Interval lock.
Your query is woefully lacking in a description of what is going on, but I'm assuming that you are processing a VSAM KSDS.
Records in a KSDS are grouped into CIs (think of it like buffering of QSAM records into a block), and processing is based on this chunk of the file. When you access a key, the CI is read into storage - so you get rather more records around than you might think. This does not normally worry anybody (and is especially good if browsing the file), but has the effect that accessing a record in the CI can prevent access to all the other ones in there as well.
This is what you are noticing - a transaction is accessing a given record in a CI and another transaction is attempting to access another keyed record which resides inside the same CI. If one of them is doing an update, or saying that it will do an update, then you will get a CI-level lock applied by VSAM which is turned into a CICS wait. Thus, one transaction will be waiting on another before it can proceed.
If this is an HUGE problem, then reducing the size of the CIs will reduce the opportunity for CI locking : but performance will suffer as more VSAM I/O will be performed. I'd be inclined to investigate why your applications are getting this contention before altering the Cluster: is there something odd which causes nearby keys to be accessed?
If you move to CICS TS 2.2, processing has been improved so that CI Locking does not happen so frequently - and so the occurance will be reduced.
Dig Deeper on IBM system z and mainframe systems
Related Q&A from Robert Crawford
For better mainframe capacity planning, how do I convert CPU hours to MIPS? And is there a way to calculate the relationship between MIPS and MSUs? Continue Reading
I have two years of experience in mainframe technology, currently working as a mainframe developer. I want to change to Java technology. Continue Reading
I want to replicate DB2 from the mainframe to an AIX box since it's cheaper and the copy can be used for testing. Is this possible? Continue Reading
Have a question for an expert?
Please add a title for your question
Get answers from a TechTarget expert on whatever's puzzling you.