Support Article
User is getting PRAbandonProcessingException in log file
SA-17791
Summary
User application not able create work item on production server due to the child requestors session is terminating by parent requestor results to PRAbandonProcessingException in logs.
Error Messages
2015-11-30 15:13:29,283 [fault (self-tuning)'] [ STANDARD] [ ] [ NBAVM:01.01.01] (ernal.async.BatchRequestorTask) ERROR - Batch activity "Rule-Connect-SOAP.ChildInvoke" threw:
com.pega.pegarules.pub.PRRuntimeError: PRRuntimeError
at com.pega.pegarules.session.internal.mgmt.base.ThreadRunner.runActivitiesAlt(ThreadRunner.java:707)
at com.pega.pegarules.session.internal.mgmt.base.ThreadRunner.runActivities(ThreadRunner.java:568)
at com.pega.pegarules.session.internal.mgmt.PRThreadImpl.runActivities(PRThreadImpl.java:427)
at com.pega.pegarules.session.internal.async.agent.QueueProcessor.executeBatchTask(QueueProcessor.java:256)
at com.pega.pegarules.session.internal.async.agent.QueueProcessor.execute(QueueProcessor.java:319)
at com.pega.pegarules.session.internal.async.BatchRequestorTask.run(BatchRequestorTask.java:885)
at com.pega.pegarules.session.internal.PRSessionProviderImpl.performTargetActionWithLock(PRSessionProviderImpl.java:1177)
at com.pega.pegarules.session.internal.PRSessionProviderImpl.doWithRequestorLocked(PRSessionProviderImpl.java:926)
at com.pega.pegarules.session.internal.PRSessionProviderImpl.doWithRequestorLocked(PRSessionProviderImpl.java:825)
at com.pega.pegarules.session.internal.async.BatchRequestorTask.run(BatchRequestorTask.java:618)
at com.pega.pegarules.session.internal.async.Agent.runBatchTask(Agent.java:816)
at com.pega.pegarules.session.internal.engineinterface.etier.impl.AsyncServant.processAsyncTask(AsyncServant.java:229)
at com.pega.pegarules.session.internal.engineinterface.etier.impl.AsyncServant.invoke(AsyncServant.java:166)
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.ejb.EngineBean.invokeEngine(EngineBean.java:225)
at sun.reflect.GeneratedMethodAccessor142.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:338)
at com.pega.pegarules.internal.bootstrap.PRBootstrap.invokeMethodPropagatingThrowable(PRBootstrap.java:379)
at com.pega.pegarules.boot.internal.extbridge.AppServerBridgeToPega.invokeMethodPropagatingThrowable(AppServerBridgeToPega.java:216)
at com.pega.pegarules.boot.internal.extbridge.AppServerBridgeToPega.invokeMethodPropagatingException(AppServerBridgeToPega.java:238)
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.session.internal.engineinterface.etier.mdb.PRAsync.processRequest(PRAsync.java:155)
at com.pega.pegarules.session.internal.engineinterface.etier.mdb.PRAsync.onMessage(PRAsync.java:112)
at sun.reflect.GeneratedMethodAccessor141.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:338)
at com.pega.pegarules.internal.bootstrap.PRBootstrap.invokeMethodPropagatingThrowable(PRBootstrap.java:379)
at com.pega.pegarules.boot.internal.extbridge.AppServerBridgeToPega.invokeMethodPropagatingThrowable(AppServerBridgeToPega.java:216)
at com.pega.pegarules.boot.internal.extbridge.AppServerBridgeToPega.invokeMethod(AppServerBridgeToPega.java:265)
at com.pega.pegarules.internal.etier.mdb.PRAsyncBoot.onMessage(PRAsyncBoot.java:91)
at weblogic.ejb.container.internal.MDListener.execute(MDListener.java:451)
at weblogic.ejb.container.internal.MDListener.run(MDListener.java:681)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:548)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:311)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:263)
Caused by: com.pega.pegarules.pub.context.PRAbandonProcessingException: PRRuntimeError
at com.pega.pegarules.session.internal.mgmt.Executable.activityStepProlog(Executable.java:1162)
at com.pegarules.generated.activity.ra_action_invokeaxis2_ab4bacc4d22ff691fd98ed821335eb56.step15_circum0(ra_action_invokeaxis2_ab4bacc4d22ff691fd98ed821335eb56.java:3992)
at com.pegarules.generated.activity.ra_action_invokeaxis2_ab4bacc4d22ff691fd98ed821335eb56.perform(ra_action_invokeaxis2_ab4bacc4d22ff691fd98ed821335eb56.java:308)
at com.pega.pegarules.session.internal.mgmt.Executable.doActivity(Executable.java:3375)
at com.pegarules.generated.activity.ra_action_invoke_5e9e0cecbbfdfa9a2b1306e703ec4af8.step8_circum0(ra_action_invoke_5e9e0cecbbfdfa9a2b1306e703ec4af8.java:1032)
at com.pegarules.generated.activity.ra_action_invoke_5e9e0cecbbfdfa9a2b1306e703ec4af8.perform(ra_action_invoke_5e9e0cecbbfdfa9a2b1306e703ec4af8.java:189)
at com.pega.pegarules.session.internal.mgmt.Executable.doActivity(Executable.java:3375)
at com.pegarules.generated.activity.ra_action_childinvoke_34be484f442477bb0a926c4384d3a9e8.step4_circum0(ra_action_childinvoke_34be484f442477bb0a926c4384d3a9e8.java:393)
at com.pegarules.generated.activity.ra_action_childinvoke_34be484f442477bb0a926c4384d3a9e8.perform(ra_action_childinvoke_34be484f442477bb0a926c4384d3a9e8.java:126)
at com.pega.pegarules.session.internal.mgmt.Executable.doActivity(Executable.java:3375)
at com.pega.pegarules.session.internal.mgmt.base.ThreadRunner.runActivitiesAlt(ThreadRunner.java:641)
... 41 more
Steps to Reproduce
Not Applicable
Root Cause
An issue in the custom application code where the parent requestor is terminating child requestor in middle of the process results to the PRAbandonProcessingException.The PRAbandonProcessingException can occur if the child requestor takes longer to process than the lifetime of the parent requestor. The child requestor is terminated with when the parent requestor disappears. It is the responsibility of the service activity to clean up any child requestors before the service completes.
Resolution
This issue would be resolved by either process the data serially instead of using a child requestor or use the Queue-For-Agent method.
Better approach would be to use an agent queue to pick up the work that is currently being handled in the child requestor.
Published February 15, 2016 - 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.