Support Article
Memory Leak issue after upgrading from 6.3 SP1 to 7.1.x
SA-123
Summary
After upgrading from PRPC 6.3 SP1 to 7.1.5, the server crashes due to an out-of-memory condition.
This happens when the user is trying to execute a flow, which calls an activity that has a loop with the Page-Remove method. In this loop, <CURRENT> is being used to obtain the iteration count.
Error Messages
<Jun 10, 2014 8:16:03 PM UTC> <Error> <Kernel> <SERVER> <[STANDBY] ExecuteThread: '21' for queue: 'weblogic.kernel.Default (self-tuning)'> <<WLS Kernel>> <> <> <1402431363435> <BEA-000802> <ExecuteRequest failed
java.lang.OutOfMemoryError: GC overhead limit exceeded.
java.lang.OutOfMemoryError: GC overhead limit exceeded
Steps to Reproduce
Execute a flow, which calls an activity that has a loop with the Page-Remove method. In this loop <CURRENT> is being used to obtain the iteration count.
Root Cause
In the loop with the Page-Remove method, the use of <CURRENT> generates code using pyForEachCounter local variable, which is the current iteration count.
If the number of items in the list are being changed (being removed in this case), the current cursor is no longer reliable and goes into an infinite loop.
Resolution
This issue is resolved through the following local change:
Since the step page is the current iterated page, <CURRENT> in the precondition of the loop with the Page-Remove method can be removed.
Published February 17, 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.