Hello Db2 for Z/OS Development.
Apar PM89016 was created several years ago to implement the lock avoidance for singleton SELECTs with
ISO(CS) and CD(YES) when R-scan is used, or the index that is chosen has
matching predicates on all columns of the index.
Recently a new Apar PH19483 (UI67378) has reverted this behaviour to avoid receiving unexpected SQLCODE +100 when there is INSERT/DELETE/UPDATE activity happening concurrently on the same table.
As can be read on the text of such new Apar PH19483:
Db2 code is changed to acquire locking for singleton SELECTs meeting the criteria described above. As a result of this change, the user may see increased locking activity and slower query performance for such singleton SELECTs; the locking is mandatory to prevent concurrent operations from causing the incorrect output. If the user desires less locking activity, consider using CURRENTDATA(NO). "
In our case (Bankinter) 80% of our read Accesses are Singleton Selects, resolved with skinny index-to-data (equal predicates on all index columns) access instead of Cursors, so the impact of not "profiting" of lock avoidance feature on those singleton Selects with ISO(CS) and CD(YES) is huge. Furthermore We can't use CURRENTDATA(NO) due to our business processes read with Singleton Select most of the times, but they also read by read-only (or ambiguous) cursors and modify afterwards with Delete or Update statements.
|Who would benefit from this IDEA?||All users that will practice Singleton Select; specially if Data Sharing.|
How should it work?
So I would like to request the possibility of including for instance a hidden Zparm which set to a certain value would allow Clients like mine (Bankinter) to profit from the code included on Apar PM89016 (that is lock avoidance for these singleton Selects) assuming that We can receive sometimes unexpected SQLCODEs +100, meanwhile such Zparm let with the default value would allow the Clients which doesn't want receive those SQLCODEs +100 to use the code included on Apar PH19483.
|Priority Justification||Our SO customer requieres it. 80% of our read Accesses are Singleton Selects, resolved with skinny index-to-data (equal predicates on all index columns) access instead of Cursors, so the impact of not "profiting" of lock avoidance feature on those singleton Selects with ISO(CS) and CD(YES) is huge.|
|IBM's success depends on gathering feedback from customers like yourself. Aha Ideas Portal is the third party tool through which IBM Offering Managers gather feedback from customers such as yourself.|
|IBM is a global organization with business processes, management structures, technical systems and service provider networks that cross borders. As such, the information collected through Aha Ideas Portal (Customer Name, Customer Email Address) will be stored by them in the United States, and handled only as per IBM's instructions and policies. Your data (Name and Email Address) will NOT be shared with other IBM customers.|
|In order to safeguard your information in Aha, do not leave your workstation unattended while using this application, log off after using it, and print only if necessary. If you need to make a hardcopy, remember to pick up the print-out immediately, keep it under lock, and destroy it immediately when no longer needed.|
|NOTICE TO EU RESIDENTS: per EU Data Protection Policy, if you wish to remove your personal information from the IBM ideas portal, please login to the ideas portal using your previously registered information then change your email to "email@example.com" and first name to "anonymous" and last name to "anonymous". This will ensure that IBM will not send any emails to you about all idea submissions|