Support Article
Commit Error due to lock gone lost exception
SA-9402
Summary
Commit Error due to lock gone lost exception when certain things occur involving a parent work object whose child object is locked. The lock on the child object is released without closing the child object's tab.
Error Messages
NC-14112801580 Client Comparison triggered SalesCaseID is :SO-14112802019
Caused by: javax.ejb.EJBException: nested exception is: com.pega.pegarules.pub.database.LockGoneException: Save, Delete or Commit has failed because lock "your_[descriptive-name]-RETBNK-CMPS-WORK-SALES SO-14112802019" is not held
Steps to Reproduce
1. Create Cover (Parent) and Covered work objects (Child).
2. Open the Parent work object in one tab (TAB1; and its corresponding thread is TABTHREAD1).
3. Open the child work object from it, using processAssignment activity in TAB1, so pyWorkPage points to Child work object.
4. Open the same parent work object in TAB2 and its corresponding thread is TABTHREAD2.
5. Open the child work object using processAssisgnment activity in TAB2.
6. PPRC closes the TAB1 and in TAB2, the child work object replaces the parent work object.
7. Open the same parent work object third time in another TAB, PRPC is using existing TABTHREAD1 and it changes the pyWorkPage.
8. Perform operation on Child work object in TAB2, then Lock Lost exception error message appears.
Root Cause
User has modified pyAssignmentsLabel control and overridden it such that the Child Work Items always open in existing Parent Work Item Harness instead of opening in new tab.
So Child Work Item in second Case directly calls ProcessAssignment Activity but it does not release the lock which is acquired by Tab1.
To release the Lock of Work Item from Tab1 and obtain it on Tab2, an extra request to server must be sent which is "doClose" operation.
When the request is sent, it removes the thread and also it releases lock on Tab1.
Resolution
Local-change is to explicitly call the DoClose activity before calling the ProcessAssignment activity.
Published November 18, 2015 - Updated October 8, 2020
Have a question? Get answers now.
Visit the Collaboration Center to ask questions, engage in discussions, share ideas, and help others.