Random ReadOnlyException
We have a case type in which we randomly receive ReadOnlyException when the user tries to do anything (i.e. when tries to refresh the page, to clic a "Save" button, a button with a "Finish assignment" or when tries to upload an attachment).
We have other case types in which the issue is not present and this particular process was not modified recently.
Appearently the exception is thrown by the Pega OOTB activity ProcessAction and in particular from the hasMessages when condition in the first step.
Trying to remove that condition in private edit solves the issue, but it is a Final Internal activity so we need to understand why it happens. Any suggestion?
We are using Pega 7.2.1
Please find the complete stack:
We have a case type in which we randomly receive ReadOnlyException when the user tries to do anything (i.e. when tries to refresh the page, to clic a "Save" button, a button with a "Finish assignment" or when tries to upload an attachment).
We have other case types in which the issue is not present and this particular process was not modified recently.
Appearently the exception is thrown by the Pega OOTB activity ProcessAction and in particular from the hasMessages when condition in the first step.
Trying to remove that condition in private edit solves the issue, but it is a Final Internal activity so we need to understand why it happens. Any suggestion?
We are using Pega 7.2.1
Please find the complete stack:
2024-03-01 17:10:27,500 [fault (self-tuning)'] [TABTHREAD2] [ ] [ MYAPP:01.74.01] ( hasMessages._baseclass.When) ERROR xxx.xxx.xxx.xxx|xxx.xxx.xxx.xxx YYYYYY - Exception caught while evaluating when
com.pega.pegarules.pub.clipboard.ReadOnlyException: Pagina o proprietà (unspecified) di sola lettura. Impossibile modificarla. Chiamata metodo: com.pega.pegarules.data.internal.clipboard.ClipboardPageImpl.remove(String, boolean, boolean, boolean) Dettagli: (none)
at com.pega.pegarules.data.internal.clipboard.ClipboardPageImpl.removeOverride(ClipboardPageImpl.java:3514)
at com.pega.pegarules.data.internal.clipboard.ClipboardPropertyBase.removeFromClipboard(ClipboardPropertyBase.java:3014)
at com.pega.pegarules.data.internal.clipboard.ClipboardPropertyBase.removeFromClipboard(ClipboardPropertyBase.java:2995)
at com.pega.pegarules.data.internal.clipboard.StorageStreamCommonImpl.deserializeOneForwardPageToPageReference(StorageStreamCommonImpl.java:1643)
at com.pega.pegarules.data.internal.clipboard.ClipboardPropertyImpl.resolveReferenceProperty(ClipboardPropertyImpl.java:5922)
at com.pega.pegarules.data.internal.clipboard.ClipboardPropertyImpl.resolveReferenceProperty(ClipboardPropertyImpl.java:7776)
at com.pega.pegarules.data.internal.clipboard.ClipboardPropertyImpl.adopt(ClipboardPropertyImpl.java:4616)
at com.pega.pegarules.data.internal.clipboard.DirectStreamContainerV7.addToClipboardObject(DirectStreamContainerV7.java:1065)
at com.pega.pegarules.data.internal.clipboard.DirectStreamContainerV7.adoptList(DirectStreamContainerV7.java:570)
at com.pega.pegarules.data.internal.clipboard.ClipboardPropertyImpl.expandStream(ClipboardPropertyImpl.java:2453)
at com.pega.pegarules.data.internal.clipboard.ClipboardPropertyImpl.expandStream(ClipboardPropertyImpl.java:2379)
at com.pega.pegarules.data.internal.clipboard.ClipboardPropertyBase.getListValues(ClipboardPropertyBase.java:2645)
at com.pega.pegarules.data.internal.clipboard.ClipboardPropertyBase.size(ClipboardPropertyBase.java:2020)
at com.pega.pegarules.data.internal.clipboard.PropertyDataPageWrapper.prSize(PropertyDataPageWrapper.java:413)
at com.pega.pegarules.data.internal.clipboard.ClipboardPropertyBase.getJavaPropertySize(ClipboardPropertyBase.java:2912)
at com.pega.pegarules.data.internal.clipboard.ClipboardPropertyImpl.expandStream(ClipboardPropertyImpl.java:2424)
at com.pega.pegarules.data.internal.clipboard.ClipboardPropertyImpl.expandStream(ClipboardPropertyImpl.java:2379)
at com.pega.pegarules.data.internal.clipboard.ClipboardPropertyBase.iterator(ClipboardPropertyBase.java:3506)
at com.pega.pegarules.data.internal.clipboard.ClipboardPropertyBase.iterator(ClipboardPropertyBase.java:3489)
at com.pega.pegarules.data.internal.clipboard.ClipboardPageImpl.hasMessages(ClipboardPageImpl.java:4637)
at com.pega.pegarules.data.internal.clipboard.ClipboardPageImpl.hasMessages(ClipboardPageImpl.java:4661)
at com.pega.pegarules.data.internal.clipboard.ClipboardPageImpl.hasMessages(ClipboardPageImpl.java:4633)
at com.pega.pegarules.data.internal.clipboard.ClipboardPageImpl.hasMessages(ClipboardPageImpl.java:4661)
at com.pega.pegarules.data.internal.clipboard.ClipboardPageImpl.hasMessages(ClipboardPageImpl.java:4645)
at com.pega.pegarules.data.internal.clipboard.ClipboardPageImpl.hasMessages(ClipboardPageImpl.java:4661)
at com.pega.pegarules.data.internal.clipboard.ClipboardPageImpl.hasMessages(ClipboardPageImpl.java:4645)
at com.pega.pegarules.data.internal.clipboard.ClipboardPageImpl.hasMessages(ClipboardPageImpl.java:4661)
at com.pega.pegarules.data.internal.clipboard.ClipboardPageImpl.hasMessages(ClipboardPageImpl.java:4633)
at com.pega.pegarules.data.internal.clipboard.ClipboardPageImpl.hasMessages(ClipboardPageImpl.java:4661)
at com.pegarules.generated.hasMessages_071017_WuPlp71zTApewE7i7hxpgg.hasMessages07_10_17(hasMessages_071017_WuPlp71zTApewE7i7hxpgg.java:108)
at com.pegarules.generated.hasMessages_071017_WuPlp71zTApewE7i7hxpgg.invoke(hasMessages_071017_WuPlp71zTApewE7i7hxpgg.java:82)
at com.pega.pegarules.generation.internal.library.LibraryRuntime.resolveAndinvokeFunctionViaReflection(LibraryRuntime.java:221)
at com.pega.pegarules.generation.internal.library.LibraryRuntime.invokeLibraryRuntime(LibraryRuntime.java:119)
at com.pega.pegarules.generation.internal.library.LibraryFunctionUtilityImpl.resolveMethodCall(LibraryFunctionUtilityImpl.java:2912)
at com.pega.pegarules.session.internal.mgmt.Executable.resolveMethodCall(Executable.java:11114)
at com.pegarules.generated.when.ra_when_hasmessages_8e97d69145a6536298f4d4f6b5175a86.evaluate(ra_when_hasmessages_8e97d69145a6536298f4d4f6b5175a86.java:50)
at com.pega.pegarules.session.internal.mgmt.Executable.evaluateWhen(Executable.java:4246)
at com.pega.pegarules.session.internal.mgmt.Executable.invokeWhen(Executable.java:10648)
at com.pega.pegarules.generation.internal.stream.StreamToolsImpl.evaluateWhenCondition(StreamToolsImpl.java:1329)
at com.pega.pegarules.generation.internal.stream.StreamToolsImpl.evaluateWhenCondition(StreamToolsImpl.java:1314)
at com.pega.pegarules.generation.internal.assembly.jspwhen.JspWhenEvaluate.processElement(JspWhenEvaluate.java:230)
at com.pega.pegarules.generation.internal.assembly.jspwhen.JspWhenEvaluate.processElement(JspWhenEvaluate.java:147)
at com.pega.pegarules.generation.internal.assembly.jspwhen.JspWhenEvaluate.processElement(JspWhenEvaluate.java:147)
at com.pega.pegarules.generation.internal.assembly.jspwhen.JspWhenEvaluate.evaluateCompiledWhen(JspWhenEvaluate.java:60)
at com.pega.pegarules.generation.internal.assembly.jspwhen.ProcessWhenExpression.evaluateCompiledWhen(ProcessWhenExpression.java:250)
at com.pega.pegarules.generation.internal.PRGenProviderImpl.evaluateCompiledWhen(PRGenProviderImpl.java:957)
at com.pega.pegarules.session.internal.mgmt.autostreams.AutoStreamRuntimeImpl.evaluateCompiledWhen(AutoStreamRuntimeImpl.java:1092)
at com.pega.pegarules.session.internal.mgmt.autostreams.AutoStreamRuntimeImpl.handleEvaluateWhen(AutoStreamRuntimeImpl.java:1108)
at com.pegarules.generated.html_section.ra_stream_displayerrors_a2e6ff2c328bd7ddb9a1c4148b130b96.pzLayout_1(ra_stream_displayerrors_a2e6ff2c328bd7ddb9a1c4148b130b96.java:478)
at com.pegarules.generated.html_section.ra_stream_displayerrors_a2e6ff2c328bd7ddb9a1c4148b130b96.pzSectionBody_1(ra_stream_displayerrors_a2e6ff2c328bd7ddb9a1c4148b130b96.java:235)
at com.pegarules.generated.html_section.ra_stream_displayerrors_a2e6ff2c328bd7ddb9a1c4148b130b96.execute(ra_stream_displayerrors_a2e6ff2c328bd7ddb9a1c4148b130b96.java:102)
at com.pega.pegarules.session.internal.mgmt.Executable.getStream(Executable.java:4060)
at com.pega.pegarules.session.internal.mgmt.autostreams.AutoStreamRuleRuntime.getSectionStream(AutoStreamRuleRuntime.java:149)
at com.pegarules.generated.html_section.ra_stream_pycasecontent_5b9d78e933a0ae5999233e1b1206f970.includeSectionBody_4(ra_stream_pycasecontent_5b9d78e933a0ae5999233e1b1206f970.java:355)
at com.pegarules.generated.html_section.ra_stream_pycasecontent_5b9d78e933a0ae5999233e1b1206f970.pzLayoutBodyWrapper_4(ra_stream_pycasecontent_5b9d78e933a0ae5999233e1b1206f970.java:344)
at com.pegarules.generated.html_section.ra_stream_pycasecontent_5b9d78e933a0ae5999233e1b1206f970.pzLayout_4(ra_stream_pycasecontent_5b9d78e933a0ae5999233e1b1206f970.java:366)
at com.pegarules.generated.html_section.ra_stream_pycasecontent_5b9d78e933a0ae5999233e1b1206f970.pzSectionBody_1(ra_stream_pycasecontent_5b9d78e933a0ae5999233e1b1206f970.java:219)
at com.pegarules.generated.html_section.ra_stream_pycasecontent_5b9d78e933a0ae5999233e1b1206f970.execute(ra_stream_pycasecontent_5b9d78e933a0ae5999233e1b1206f970.java:100)
at com.pega.pegarules.session.internal.mgmt.StreamBuilderTools.appendStreamKeepProperties(StreamBuilderTools.java:733)
at com.pega.pegarules.session.internal.mgmt.autostreams.IncludeStreamRuntime.getStream(IncludeStreamRuntime.java:332)
at com.pega.pegarules.session.internal.mgmt.autostreams.IncludeStreamRuntime.emitIncludeStreamReference(IncludeStreamRuntime.java:252)
at com.pega.pegarules.session.internal.mgmt.autostreams.AutoStreamRuntimeImpl.emitIncludeStreamReference(AutoStreamRuntimeImpl.java:363)
at com.pegarules.generated.html_section.ra_stream_pycasebody_63d0c83fa11c102b18fbcd4edb1e72ad.sectionBodyIncludeInCell_1(ra_stream_pycasebody_63d0c83fa11c102b18fbcd4edb1e72ad.java:443)
at com.pegarules.generated.html_section.ra_stream_pycasebody_63d0c83fa11c102b18fbcd4edb1e72ad.simpleLayoutCell_1(ra_stream_pycasebody_63d0c83fa11c102b18fbcd4edb1e72ad.java:464)
at com.pegarules.generated.html_section.ra_stream_pycasebody_63d0c83fa11c102b18fbcd4edb1e72ad.simpleLayout_1(ra_stream_pycasebody_63d0c83fa11c102b18fbcd4edb1e72ad.java:494)
at com.pegarules.generated.html_section.ra_stream_pycasebody_63d0c83fa11c102b18fbcd4edb1e72ad.pzLayoutBodyWrapper_1(ra_stream_pycasebody_63d0c83fa11c102b18fbcd4edb1e72ad.java:404)
at com.pegarules.generated.html_section.ra_stream_pycasebody_63d0c83fa11c102b18fbcd4edb1e72ad.pzLayout_1(ra_stream_pycasebody_63d0c83fa11c102b18fbcd4edb1e72ad.java:513)
at com.pegarules.generated.html_section.ra_stream_pycasebody_63d0c83fa11c102b18fbcd4edb1e72ad.simpleLayoutCell_2(ra_stream_pycasebody_63d0c83fa11c102b18fbcd4edb1e72ad.java:536)
at com.pegarules.generated.html_section.ra_stream_pycasebody_63d0c83fa11c102b18fbcd4edb1e72ad.simpleLayout_3(ra_stream_pycasebody_63d0c83fa11c102b18fbcd4edb1e72ad.java:595)
at com.pegarules.generated.html_section.ra_stream_pycasebody_63d0c83fa11c102b18fbcd4edb1e72ad.pzLayoutBodyWrapper_3(ra_stream_pycasebody_63d0c83fa11c102b18fbcd4edb1e72ad.java:265)
at com.pegarules.generated.html_section.ra_stream_pycasebody_63d0c83fa11c102b18fbcd4edb1e72ad.pzLayout_3(ra_stream_pycasebody_63d0c83fa11c102b18fbcd4edb1e72ad.java:615)
at com.pegarules.generated.html_section.ra_stream_pycasebody_63d0c83fa11c102b18fbcd4edb1e72ad.pzSectionBody_1(ra_stream_pycasebody_63d0c83fa11c102b18fbcd4edb1e72ad.java:226)
at com.pegarules.generated.html_section.ra_stream_pycasebody_63d0c83fa11c102b18fbcd4edb1e72ad.execute(ra_stream_pycasebody_63d0c83fa11c102b18fbcd4edb1e72ad.java:100)
at com.pega.pegarules.session.internal.mgmt.Executable.getStream(Executable.java:4060)
at com.pega.pegarules.session.internal.mgmt.autostreams.AutoStreamRuleRuntime.getSectionStream(AutoStreamRuleRuntime.java:149)
at com.pegarules.generated.html_section.ra_stream_pycasecontainer_13d2f2fa298672c5a46a37d6711f5006.includeSectionBody_3(ra_stream_pycasecontainer_13d2f2fa298672c5a46a37d6711f5006.java:339)
at com.pegarules.generated.html_section.ra_stream_pycasecontainer_13d2f2fa298672c5a46a37d6711f5006.pzLayoutBodyWrapper_3(ra_stream_pycasecontainer_13d2f2fa298672c5a46a37d6711f5006.java:328)
at com.pegarules.generated.html_section.ra_stream_pycasecontainer_13d2f2fa298672c5a46a37d6711f5006.pzLayout_3(ra_stream_pycasecontainer_13d2f2fa298672c5a46a37d6711f5006.java:350)
at com.pegarules.generated.html_section.ra_stream_pycasecontainer_13d2f2fa298672c5a46a37d6711f5006.pzSectionBody_1(ra_stream_pycasecontainer_13d2f2fa298672c5a46a37d6711f5006.java:223)
at com.pegarules.generated.html_section.ra_stream_pycasecontainer_13d2f2fa298672c5a46a37d6711f5006.execute(ra_stream_pycasecontainer_13d2f2fa298672c5a46a37d6711f5006.java:100)
at com.pega.pegarules.session.internal.mgmt.Executable.getStream(Executable.java:4060)
at com.pega.pegarules.session.internal.mgmt.autostreams.AutoStreamRuleRuntime.getSectionStream(AutoStreamRuleRuntime.java:149)
at com.pegarules.generated.html_harness.ra_stream_perform_4a4e6bd9798cd2bec75cf9b9eef0e544.includeSectionBody_1(ra_stream_perform_4a4e6bd9798cd2bec75cf9b9eef0e544.java:2750)
at com.pegarules.generated.html_harness.ra_stream_perform_4a4e6bd9798cd2bec75cf9b9eef0e544.generatePegaHarnessDiv_1(ra_stream_perform_4a4e6bd9798cd2bec75cf9b9eef0e544.java:2471)
at com.pegarules.generated.html_harness.ra_stream_perform_4a4e6bd9798cd2bec75cf9b9eef0e544.execute(ra_stream_perform_4a4e6bd9798cd2bec75cf9b9eef0e544.java:711)
at com.pega.pegarules.session.internal.mgmt.Executable.getStream(Executable.java:4060)
at com.pega.pegarules.session.internal.mgmt.Executable.getStream(Executable.java:3888)
at com.pegarules.generated.activity.ra_action_reloadharness_64918f09a9eb95090c16ac804a4738fb.step9_circum0(ra_action_reloadharness_64918f09a9eb95090c16ac804a4738fb.java:1015)
at com.pegarules.generated.activity.ra_action_reloadharness_64918f09a9eb95090c16ac804a4738fb.perform(ra_action_reloadharness_64918f09a9eb95090c16ac804a4738fb.java:206)
at com.pega.pegarules.session.internal.mgmt.Executable.doActivity(Executable.java:3527)
at com.pega.pegarules.session.internal.mgmt.base.ThreadRunner.runActivitiesAlt(ThreadRunner.java:646)
at com.pega.pegarules.session.internal.mgmt.PRThreadImpl.runActivitiesAlt(PRThreadImpl.java:467)
at com.pega.pegarules.session.internal.engineinterface.service.HttpAPI.runActivities(HttpAPI.java:3166)
at com.pega.pegarules.session.external.engineinterface.service.EngineAPI.processRequestInner(EngineAPI.java:390)
at sun.reflect.GeneratedMethodAccessor165.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at com.pega.pegarules.session.internal.PRSessionProviderImpl.performTargetActionWithLock(PRSessionProviderImpl.java:1301)
at com.pega.pegarules.session.internal.PRSessionProviderImpl.doWithRequestorLocked(PRSessionProviderImpl.java:1038)
at com.pega.pegarules.session.internal.PRSessionProviderImpl.doWithRequestorLocked(PRSessionProviderImpl.java:893)
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:825)
at com.pega.pegarules.session.internal.engineinterface.etier.impl.EngineImpl._invokeEngine_privact(EngineImpl.java:327)
at com.pega.pegarules.session.internal.engineinterface.etier.impl.EngineImpl.invokeEngine(EngineImpl.java:270)
at com.pega.pegarules.session.internal.engineinterface.etier.ejb.EngineBean.invokeEngine(EngineBean.java:225)
at sun.reflect.GeneratedMethodAccessor128.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at com.pega.pegarules.internal.bootstrap.PRBootstrap.invokeMethod(PRBootstrap.java:370)
at com.pega.pegarules.internal.bootstrap.PRBootstrap.invokeMethodPropagatingThrowable(PRBootstrap.java:411)
at com.pega.pegarules.boot.internal.extbridge.AppServerBridgeToPega.invokeMethodPropagatingThrowable(AppServerBridgeToPega.java:224)
at com.pega.pegarules.boot.internal.extbridge.AppServerBridgeToPega.invokeMethodPropagatingException(AppServerBridgeToPega.java:246)
at com.pega.pegarules.internal.etier.ejb.EngineBeanBoot.invokeEngine(EngineBeanBoot.java:168)
at com.pega.pegarules.internal.etier.ejb.EngineBMT_h449u3_ELOImpl.__WL_invoke(Unknown Source)
at weblogic.ejb.container.internal.SessionLocalMethodInvoker.invoke(SessionLocalMethodInvoker.java:33)
at com.pega.pegarules.internal.etier.ejb.EngineBMT_h449u3_ELOImpl.invokeEngine(Unknown Source)
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:594)
at com.pega.pegarules.web.impl.WebStandardImpl.doPost(WebStandardImpl.java:390)
at sun.reflect.GeneratedMethodAccessor151.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:483)
at com.pega.pegarules.internal.bootstrap.PRBootstrap.invokeMethod(PRBootstrap.java:370)
at com.pega.pegarules.internal.bootstrap.PRBootstrap.invokeMethodPropagatingThrowable(PRBootstrap.java:411)
at com.pega.pegarules.boot.internal.extbridge.AppServerBridgeToPega.invokeMethodPropagatingThrowable(AppServerBridgeToPega.java:224)
at com.pega.pegarules.boot.internal.extbridge.AppServerBridgeToPega.invokeMethod(AppServerBridgeToPega.java:273)
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:3432)
at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3402)
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:2285)
at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2201)
at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2179)
at weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1572)
at weblogic.servlet.provider.ContainerSupportProviderImpl$WlsRequestExecutor.run(ContainerSupportProviderImpl.java:255)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:311)