Question
How to trace/debug LockGoneException? (Production env)
The client is consistently incurring LockGoneExceptions in their production logs in a particular geographic location. These often cause a loss of data on the work object in question. They have been able to remedy some of the cases by using a Refresh and Lock step prior to the Obj-Save, however this can be quite cumbersome. Also with the same codebase, one location will lose the lock, the but the other environment will not even at the same length of time.
They are asking how to trace or catch these occurrences. Turning on Debug in production is basically out of the question, but they want to get to the bottom of what actually initiates losing the lock on the work object. Some of these happen during agent processing and some happen to user's entering and updating work.
Is there a specific activity that runs which causes the lock to be lost? Also is there a particular setting which will control the loss of the lock and could they potentially be different between the two environments? What/where would that setting reside?
Client is on Pega 7.1.8...below is a sample exception with sensitive info scrubbed:
2017-05-03 13:18:26,521 [fault (self-tuning)'] [TABTHREAD2] [TEST:10.22.01] ( internal.access.DatabaseImpl) ERROR TEST.ru.TEST.com|moscbcarappp1.ru.db.com TEST@TEST.com - Encountered problem when performing a Commit
com.pega.pegarules.pub.database.LockGoneException: Save, Delete or Commit has failed because lock "DB-FW-CAR-ONB-WORK GKYC-1337" is not held
From: (unknown)
at com.pega.pegarules.data.internal.access.LockManagerImpl.checkRequiredLocks(LockManagerImpl.java:1166)
at com.pega.pegarules.data.internal.access.DatabaseImpl.checkRequiredLocks(DatabaseImpl.java:2269)
at com.pega.pegarules.data.internal.access.DatabaseImpl.attemptToProcessUpdates(DatabaseImpl.java:2650)
at com.pega.pegarules.data.internal.access.DatabaseImpl.processUpdates(DatabaseImpl.java:2312)
at com.pega.pegarules.data.internal.access.Saver.save(Saver.java:651)
at com.pega.pegarules.data.internal.access.DatabaseImpl.save(DatabaseImpl.java:5049)
at com.pega.pegarules.data.internal.access.DatabaseImpl.save(DatabaseImpl.java:5035)
at com.pegarules.generated.activity.ra_action_updatecpkycdocmatric_2a70210213e843913b56ca68062a4166.step21_circum0(ra_action_updatecpkycdocmatric_2a70210213e843913b56ca68062a4166.java:1673)
at com.pegarules.generated.activity.ra_action_updatecpkycdocmatric_2a70210213e843913b56ca68062a4166.perform(ra_action_updatecpkycdocmatric_2a70210213e843913b56ca68062a4166.java:278)
at com.pega.pegarules.session.internal.mgmt.Executable.doActivity(Executable.java:3500)
at com.pega.pegarules.session.internal.mgmt.Executable.invokeActivity(Executable.java:10521)
at com.pegarules.generated.activity.ra_action_performdefaults_d5a76ba405b63b62ce5e4fb4bb3fa564.step13_circum0(ra_action_performdefaults_d5a76ba405b63b62ce5e4fb4bb3fa564.java:1859)
at com.pegarules.generated.activity.ra_action_performdefaults_d5a76ba405b63b62ce5e4fb4bb3fa564.perform(ra_action_performdefaults_d5a76ba405b63b62ce5e4fb4bb3fa564.java:273)
at com.pega.pegarules.session.internal.mgmt.Executable.doActivity(Executable.java:3500)
at com.pega.pegarules.session.internal.mgmt.Executable.invokeActivity(Executable.java:10521)
at com.pegarules.generated.activity.ra_action_postkycquestionswrapper_85039a894f9c1f497f0331c18ef82284.step1_circum0(ra_action_postkycquestionswrapper_85039a894f9c1f497f0331c18ef82284.java:189)
at com.pegarules.generated.activity.ra_action_postkycquestionswrapper_85039a894f9c1f497f0331c18ef82284.perform(ra_action_postkycquestionswrapper_85039a894f9c1f497f0331c18ef82284.java:72)
at com.pega.pegarules.session.internal.mgmt.Executable.doActivity(Executable.java:3500)
at com.pegarules.generated.callActivity_071017_xvj4o_pyNDBZ4Gy293rekg.callActivity07_10_17(callActivity_071017_xvj4o_pyNDBZ4Gy293rekg.java:122)
at com.pegarules.generated.callActivity_071017_xvj4o_pyNDBZ4Gy293rekg.invoke(callActivity_071017_xvj4o_pyNDBZ4Gy293rekg.java:82)
at com.pega.pegarules.generation.internal.library.LibraryRuntime.resolveAndinvokeFunctionViaReflection(LibraryRuntime.java:133)
at com.pega.pegarules.generation.internal.library.LibraryRuntime.invokeLibraryRuntime(LibraryRuntime.java:110)
at com.pega.pegarules.session.internal.mgmt.Executable.invokeLibraryRuntime(Executable.java:8954)
at com.pega.pegarules.priv.generator.LibrarySupport.resolveAndInvokeFunctionViaReflection(LibrarySupport.java:181)
at com.pegarules.generated.pega_rules_utilities.callActivity(pega_rules_utilities.java:1878)
at com.pegarules.generated.flowaction.ra_action_kycquestions_9636d0e742be91ac262e532e36085b58.RunFlowActionActivity_circum0(ra_action_kycquestions_9636d0e742be91ac262e532e36085b58.java:395)
at com.pegarules.generated.flowaction.ra_action_kycquestions_9636d0e742be91ac262e532e36085b58.perform(ra_action_kycquestions_9636d0e742be91ac262e532e36085b58.java:72)
at com.pega.pegarules.session.internal.mgmt.Executable.doAction(Executable.java:3305)
at com.pegarules.generated.activity.ra_action_pxperformflowaction_eafc82729edb7106a8de2a224fc038c3.step7_circum0(ra_action_pxperformflowaction_eafc82729edb7106a8de2a224fc038c3.java:954)
at com.pegarules.generated.activity.ra_action_pxperformflowaction_eafc82729edb7106a8de2a224fc038c3.perform(ra_action_pxperformflowaction_eafc82729edb7106a8de2a224fc038c3.java:199)
at com.pega.pegarules.session.internal.mgmt.Executable.doActivity(Executable.java:3500)
at com.pega.pegarules.session.internal.mgmt.Executable.invokeActivity(Executable.java:10521)
at com.pegarules.generated.activity.ra_action_submitmodalflowaction_1f8652ebbdfa01bbbc02d2432ea63f6d.step6_circum0(ra_action_submitmodalflowaction_1f8652ebbdfa01bbbc02d2432ea63f6d.java:819)
at com.pegarules.generated.activity.ra_action_submitmodalflowaction_1f8652ebbdfa01bbbc02d2432ea63f6d.perform(ra_action_submitmodalflowaction_1f8652ebbdfa01bbbc02d2432ea63f6d.java:160)
at com.pega.pegarules.session.internal.mgmt.Executable.doActivity(Executable.java:3500)
at com.pega.pegarules.session.internal.mgmt.Executable.doAction(Executable.java:3233)
at com.pegarules.generated.html.ra_stream_pzgridmodalhtml_80b459a3b5c781aba9ca62e408bee380.execute(ra_stream_pzgridmodalhtml_80b459a3b5c781aba9ca62e408bee380.java:150)
at com.pega.pegarules.session.internal.mgmt.Executable.getStream(Executable.java:4033)
at com.pega.pegarules.session.internal.mgmt.Executable.getStream(Executable.java:3861)
at com.pegarules.generated.html.ra_stream_pyshowstream_0ac1b9f64c756da2a320f899d95ff35f.execute(ra_stream_pyshowstream_0ac1b9f64c756da2a320f899d95ff35f.java:129)
at com.pega.pegarules.session.internal.mgmt.Executable.getStream(Executable.java:4033)
at com.pega.pegarules.session.internal.mgmt.Executable.getStream(Executable.java:3861)
at com.pega.pegarules.pub.runtime.AbstractActivity.showHtml(AbstractActivity.java:247)
at com.pegarules.generated.activity.ra_action_showstream_f351378ddef289e737ba4d8fe14e1953.step6_circum0(ra_action_showstream_f351378ddef289e737ba4d8fe14e1953.java:160)
at com.pegarules.generated.activity.ra_action_showstream_f351378ddef289e737ba4d8fe14e1953.perform(ra_action_showstream_f351378ddef289e737ba4d8fe14e1953.java:69)
at com.pega.pegarules.session.internal.mgmt.Executable.doActivity(Executable.java:3500)
at com.pega.pegarules.session.internal.mgmt.base.ThreadRunner.runActivitiesAlt(ThreadRunner.java:646)
at com.pega.pegarules.session.internal.mgmt.PRThreadImpl.runActivitiesAlt(PRThreadImpl.java:461)
at com.pega.pegarules.session.internal.engineinterface.service.HttpAPI.runActivities(HttpAPI.java:3322)
at com.pega.pegarules.session.external.engineinterface.service.EngineAPI.processRequestInner(EngineAPI.java:385)
at sun.reflect.GeneratedMethodAccessor131.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.pega.pegarules.session.internal.PRSessionProviderImpl.performTargetActionWithLock(PRSessionProviderImpl.java:1270)
at com.pega.pegarules.session.internal.PRSessionProviderImpl.doWithRequestorLocked(PRSessionProviderImpl.java:1008)
at com.pega.pegarules.session.internal.PRSessionProviderImpl.doWithRequestorLocked(PRSessionProviderImpl.java:841)
at com.pega.pegarules.session.external.engineinterface.service.EngineAPI.processRequest(EngineAPI.java:331)
at com.pega.pegarules.session.internal.engineinterface.service.HttpAPI.invoke(HttpAPI.java:850)
at com.pega.pegarules.session.internal.engineinterface.etier.impl.EngineImpl._invokeEngine_privact(EngineImpl.java:315)
at com.pega.pegarules.session.internal.engineinterface.etier.impl.EngineImpl.invokeEngine(EngineImpl.java:263)
at com.pega.pegarules.session.internal.engineinterface.etier.impl.EngineImpl.invokeEngine(EngineImpl.java:240)
at com.pega.pegarules.priv.context.JNDIEnvironment.invokeEngineInner(JNDIEnvironment.java:278)
at com.pega.pegarules.priv.context.JNDIEnvironment.invokeEngine(JNDIEnvironment.java:223)
at com.pega.pegarules.web.impl.WebStandardImpl.makeEtierRequest(WebStandardImpl.java:574)
at com.pega.pegarules.web.impl.WebStandardImpl.doPost(WebStandardImpl.java:374)
at sun.reflect.GeneratedMethodAccessor300.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.pega.pegarules.internal.bootstrap.PRBootstrap.invokeMethod(PRBootstrap.java:367)
at com.pega.pegarules.internal.bootstrap.PRBootstrap.invokeMethodPropagatingThrowable(PRBootstrap.java:408)
at com.pega.pegarules.boot.internal.extbridge.AppServerBridgeToPega.invokeMethodPropagatingThrowable(AppServerBridgeToPega.java:223)
at com.pega.pegarules.boot.internal.extbridge.AppServerBridgeToPega.invokeMethod(AppServerBridgeToPega.java:272)
at com.pega.pegarules.internal.web.servlet.WebStandardBoot.doPost(WebStandardBoot.java:121)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:751)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:844)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:280)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:254)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:136)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:346)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:243)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3427)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3397)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.provider.WlsSubjectHandle.run(WlsSubjectHandle.java:57)
at weblogic.servlet.internal.WebAppServletContext.doSecuredExecute(WebAppServletContext.java:2280)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2196)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2174)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1621)
at weblogic.servlet.provider.ContainerSupportProviderImpl$WlsRequestExecutor.run(ContainerSupportProviderImpl.java:256)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:311)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:263)
2017-05-03 13:18:26,522 [fault (self-tuning)'] [TABTHREAD2] [TEST:10.22.01] (tric.DB_FW_CAR_ONB_Work.Action) ERROR TEST.ru.TT.com|TEST.ru.TT.com TEST@TEST.com - obj-save failed.
com.pega.pegarules.pub.database.LockGoneException: Save, Delete or Commit has failed because lock "DB-FW-CAR-ONB-WORK GKYC-1337" is not held
From: (unknown)
at com.pega.pegarules.data.internal.access.LockManagerImpl.checkRequiredLocks(LockManagerImpl.java:1166)
at com.pega.pegarules.data.internal.access.DatabaseImpl.checkRequiredLocks(DatabaseImpl.java:2269)
at com.pega.pegarules.data.internal.access.DatabaseImpl.attemptToProcessUpdates(DatabaseImpl.java:2650)
at com.pega.pegarules.data.internal.access.DatabaseImpl.processUpdates(DatabaseImpl.java:2312)
at com.pega.pegarules.data.internal.access.Saver.save(Saver.java:651)
at com.pega.pegarules.data.internal.access.DatabaseImpl.save(DatabaseImpl.java:5049)
at com.pega.pegarules.data.internal.access.DatabaseImpl.save(DatabaseImpl.java:5035)
at com.pegarules.generated.activity.ra_action_updatecpkycdocmatric_2a70210213e843913b56ca68062a4166.step21_circum0(ra_action_updatecpkycdocmatric_2a70210213e843913b56ca68062a4166.java:1673)
at com.pegarules.generated.activity.ra_action_updatecpkycdocmatric_2a70210213e843913b56ca68062a4166.perform(ra_action_updatecpkycdocmatric_2a70210213e843913b56ca68062a4166.java:278)
at com.pega.pegarules.session.internal.mgmt.Executable.doActivity(Executable.java:3500)
at com.pega.pegarules.session.internal.mgmt.Executable.invokeActivity(Executable.java:10521)
at com.pegarules.generated.activity.ra_action_performdefaults_d5a76ba405b63b62ce5e4fb4bb3fa564.step13_circum0(ra_action_performdefaults_d5a76ba405b63b62ce5e4fb4bb3fa564.java:1859)
at com.pegarules.generated.activity.ra_action_performdefaults_d5a76ba405b63b62ce5e4fb4bb3fa564.perform(ra_action_performdefaults_d5a76ba405b63b62ce5e4fb4bb3fa564.java:273)
at com.pega.pegarules.session.internal.mgmt.Executable.doActivity(Executable.java:3500)
at com.pega.pegarules.session.internal.mgmt.Executable.invokeActivity(Executable.java:10521)
at com.pegarules.generated.activity.ra_action_postkycquestionswrapper_85039a894f9c1f497f0331c18ef82284.step1_circum0(ra_action_postkycquestionswrapper_85039a894f9c1f497f0331c18ef82284.java:189)
at com.pegarules.generated.activity.ra_action_postkycquestionswrapper_85039a894f9c1f497f0331c18ef82284.perform(ra_action_postkycquestionswrapper_85039a894f9c1f497f0331c18ef82284.java:72)
at com.pega.pegarules.session.internal.mgmt.Executable.doActivity(Executable.java:3500)
at com.pegarules.generated.callActivity_071017_xvj4o_pyNDBZ4Gy293rekg.callActivity07_10_17(callActivity_071017_xvj4o_pyNDBZ4Gy293rekg.java:122)
at com.pegarules.generated.callActivity_071017_xvj4o_pyNDBZ4Gy293rekg.invoke(callActivity_071017_xvj4o_pyNDBZ4Gy293rekg.java:82)
at com.pega.pegarules.generation.internal.library.LibraryRuntime.resolveAndinvokeFunctionViaReflection(LibraryRuntime.java:133)
at com.pega.pegarules.generation.internal.library.LibraryRuntime.invokeLibraryRuntime(LibraryRuntime.java:110)
at com.pega.pegarules.session.internal.mgmt.Executable.invokeLibraryRuntime(Executable.java:8954)
at com.pega.pegarules.priv.generator.LibrarySupport.resolveAndInvokeFunctionViaReflection(LibrarySupport.java:181)
at com.pegarules.generated.pega_rules_utilities.callActivity(pega_rules_utilities.java:1878)
at com.pegarules.generated.flowaction.ra_action_kycquestions_9636d0e742be91ac262e532e36085b58.RunFlowActionActivity_circum0(ra_action_kycquestions_9636d0e742be91ac262e532e36085b58.java:395)
at com.pegarules.generated.flowaction.ra_action_kycquestions_9636d0e742be91ac262e532e36085b58.perform(ra_action_kycquestions_9636d0e742be91ac262e532e36085b58.java:72)
at com.pega.pegarules.session.internal.mgmt.Executable.doAction(Executable.java:3305)
at com.pegarules.generated.activity.ra_action_pxperformflowaction_eafc82729edb7106a8de2a224fc038c3.step7_circum0(ra_action_pxperformflowaction_eafc82729edb7106a8de2a224fc038c3.java:954)
at com.pegarules.generated.activity.ra_action_pxperformflowaction_eafc82729edb7106a8de2a224fc038c3.perform(ra_action_pxperformflowaction_eafc82729edb7106a8de2a224fc038c3.java:199)
at com.pega.pegarules.session.internal.mgmt.Executable.doActivity(Executable.java:3500)
at com.pega.pegarules.session.internal.mgmt.Executable.invokeActivity(Executable.java:10521)
at com.pegarules.generated.activity.ra_action_submitmodalflowaction_1f8652ebbdfa01bbbc02d2432ea63f6d.step6_circum0(ra_action_submitmodalflowaction_1f8652ebbdfa01bbbc02d2432ea63f6d.java:819)
at com.pegarules.generated.activity.ra_action_submitmodalflowaction_1f8652ebbdfa01bbbc02d2432ea63f6d.perform(ra_action_submitmodalflowaction_1f8652ebbdfa01bbbc02d2432ea63f6d.java:160)
at com.pega.pegarules.session.internal.mgmt.Executable.doActivity(Executable.java:3500)
at com.pega.pegarules.session.internal.mgmt.Executable.doAction(Executable.java:3233)
at com.pegarules.generated.html.ra_stream_pzgridmodalhtml_80b459a3b5c781aba9ca62e408bee380.execute(ra_stream_pzgridmodalhtml_80b459a3b5c781aba9ca62e408bee380.java:150)
at com.pega.pegarules.session.internal.mgmt.Executable.getStream(Executable.java:4033)
at com.pega.pegarules.session.internal.mgmt.Executable.getStream(Executable.java:3861)
at com.pegarules.generated.html.ra_stream_pyshowstream_0ac1b9f64c756da2a320f899d95ff35f.execute(ra_stream_pyshowstream_0ac1b9f64c756da2a320f899d95ff35f.java:129)
at com.pega.pegarules.session.internal.mgmt.Executable.getStream(Executable.java:4033)
at com.pega.pegarules.session.internal.mgmt.Executable.getStream(Executable.java:3861)
at com.pega.pegarules.pub.runtime.AbstractActivity.showHtml(AbstractActivity.java:247)
at com.pegarules.generated.activity.ra_action_showstream_f351378ddef289e737ba4d8fe14e1953.step6_circum0(ra_action_showstream_f351378ddef289e737ba4d8fe14e1953.java:160)
at com.pegarules.generated.activity.ra_action_showstream_f351378ddef289e737ba4d8fe14e1953.perform(ra_action_showstream_f351378ddef289e737ba4d8fe14e1953.java:69)
at com.pega.pegarules.session.internal.mgmt.Executable.doActivity(Executable.java:3500)
at com.pega.pegarules.session.internal.mgmt.base.ThreadRunner.runActivitiesAlt(ThreadRunner.java:646)
at com.pega.pegarules.session.internal.mgmt.PRThreadImpl.runActivitiesAlt(PRThreadImpl.java:461)
at com.pega.pegarules.session.internal.engineinterface.service.HttpAPI.runActivities(HttpAPI.java:3322)
at com.pega.pegarules.session.external.engineinterface.service.EngineAPI.processRequestInner(EngineAPI.java:385)
at sun.reflect.GeneratedMethodAccessor131.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.pega.pegarules.session.internal.PRSessionProviderImpl.performTargetActionWithLock(PRSessionProviderImpl.java:1270)
at com.pega.pegarules.session.internal.PRSessionProviderImpl.doWithRequestorLocked(PRSessionProviderImpl.java:1008)
at com.pega.pegarules.session.internal.PRSessionProviderImpl.doWithRequestorLocked(PRSessionProviderImpl.java:841)
at com.pega.pegarules.session.external.engineinterface.service.EngineAPI.processRequest(EngineAPI.java:331)
at com.pega.pegarules.session.internal.engineinterface.service.HttpAPI.invoke(HttpAPI.java:850)
at com.pega.pegarules.session.internal.engineinterface.etier.impl.EngineImpl._invokeEngine_privact(EngineImpl.java:315)
at com.pega.pegarules.session.internal.engineinterface.etier.impl.EngineImpl.invokeEngine(EngineImpl.java:263)
at com.pega.pegarules.session.internal.engineinterface.etier.impl.EngineImpl.invokeEngine(EngineImpl.java:240)
at com.pega.pegarules.priv.context.JNDIEnvironment.invokeEngineInner(JNDIEnvironment.java:278)
at com.pega.pegarules.priv.context.JNDIEnvironment.invokeEngine(JNDIEnvironment.java:223)
at com.pega.pegarules.web.impl.WebStandardImpl.makeEtierRequest(WebStandardImpl.java:574)
at com.pega.pegarules.web.impl.WebStandardImpl.doPost(WebStandardImpl.java:374)
at sun.reflect.GeneratedMethodAccessor300.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:606)
at com.pega.pegarules.internal.bootstrap.PRBootstrap.invokeMethod(PRBootstrap.java:367)
at com.pega.pegarules.internal.bootstrap.PRBootstrap.invokeMethodPropagatingThrowable(PRBootstrap.java:408)
at com.pega.pegarules.boot.internal.extbridge.AppServerBridgeToPega.invokeMethodPropagatingThrowable(AppServerBridgeToPega.java:223)
at com.pega.pegarules.boot.internal.extbridge.AppServerBridgeToPega.invokeMethod(AppServerBridgeToPega.java:272)
at com.pega.pegarules.internal.web.servlet.WebStandardBoot.doPost(WebStandardBoot.java:121)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:751)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:844)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:280)
at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:254)
at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:136)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:346)
at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:243)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.wrapRun(WebAppServletContext.java:3427)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3397)
at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
at weblogic.security.service.SecurityManager.runAs(SecurityManager.java:120)
at weblogic.servlet.provider.WlsSubjectHandle.run(WlsSubjectHandle.java:57)
at weblogic.servlet.internal.WebAppServletContext.doSecuredExecute(WebAppServletContext.java:2280)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2196)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2174)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1621)
at weblogic.servlet.provider.ContainerSupportProviderImpl$WlsRequestExecutor.run(ContainerSupportProviderImpl.java:256)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:311)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:263)
One possible cause for a 'LockGoneException' is that an earlier step in a flow performed an explicit 'COMMIT' (or 'write-now' if in an OBJ-SAVE); and when you transition through a Flow the implicit 'COMMIT' therefore fails.
Actually in this case - that situation might not be the best match for your stack here (I seem to remember you get an additional message in that case; something like '[...]due to a deferred save').
If you are unable to run DEBUG on PRODUCTION (understandable) - is the issue reproducible on a Test System where DEBUG can be switched on ?
In addition you could consider (again, on NON-PRODUCTION) building a RDBMS-level 'audit' trigger to watch lock rows being inserted/deleted ; or a VETO trigger to prevent (i.e., force an error to give you a Java Stack - to help identify who/what is 'stealing' your lock etc.) inserts/deletes in particular scenarios.
Another way this issue can come about that I have seen : are you using 'Covered Objects' ('Child/Parent' Cases?) - sometimes the Locking can get confused if your UI allows something like the following to happen:
1. Take a Lock on a 'Parent' ('Covering') Work Item / Case.
2. This implicitly takes a lock on any Child Case.
3. Now take a lock explicitly on the Child Case. (We already have a lock; nothing will happen in fact).
4. Unlock (by closing the relevant UI) the 'Parent' Case; this will unlock the Child.
But the UI at step 3; will still believe it has a Lock - and may fail at a subsequent step.
Warning: this is from my (human) memory - so I might have got some of that garbled - but an AUDIT trigger on the Lock Table (PR_SYS_LOCKS) may help you here.
Hope some of this helps,
John