Pin_deposit Running Out of Memory or Leaks Detected
(Doc ID 2988002.1)
Last updated on NOVEMBER 20, 2023
Applies to:
Oracle Communications Billing and Revenue Management - Version 12.0.0.7.0 and laterInformation in this document applies to any platform.
Symptoms
On : 12.0.0.7.0 version, Core Billing
pin_deposit throwing the error "mmap failed for pcm_dyn_attach_mmap(): Cannot allocate memory" for very large batches.
The use did a valgrind run on the pin_deposit and can see that there are significant memory leaks in pin_deposit which are contributing to this issue.
Snippet of valgrind_output:
------------------------------
<error>
<unique>0x105</unique>
<tid>1</tid>
<kind>Leak_DefinitelyLost</kind>
<xwhat>
<text>23,192,264 (753,984 direct, 22,438,280 indirect) bytes in 2,618 blocks are definitely lost in loss record 262 of 262</text>
<leakedbytes>23192264</leakedbytes>
<leakedblocks>2618</leakedblocks>
</xwhat>
<stack>
<frame>
<ip>0x402B5C8</ip>
<obj>/usr/libexec/valgrind/vgpreload_memcheck-x86-linux.so</obj>
<fn>malloc</fn>
<dir>/builddir/build/BUILD/valgrind-3.15.0/coregrind/m_replacemalloc</dir>
<file>vg_replace_malloc.c</file>
<line>309</line>
</frame>
STEPS
------------------------------------
1) Create a Credit Card account with a plan which charges some amount (e.x. 2000 accounts) and creates an authorization for the same.
2) Move pin_virtual_time to next day and run the pin_deposit with the following configuration:
pin_deposit children 4
pin_deposit per_batch 60
pin_deposit per_step 240
pin_deposit fetch_size 500
Cause
To view full details, sign in with your My Oracle Support account. |
|
Don't have a My Oracle Support account? Click to get started! |
In this Document
Symptoms |
Cause |
Solution |
References |