Memory Leaks In fm_subscription - PIN_FLD_NO_MEM Error During Billing (Doc ID 790173.1)

Last updated on SEPTEMBER 26, 2016

Applies to:

Oracle Communications Billing and Revenue Management - Version 7.2.1.0.0 to 7.2.1.0.1 [Release 7.2.1]
Information in this document applies to any platform.
***Checked for relevance on 28-July-2016***

Symptoms

Memory leaks in fm_subscription lead to OUT OF MEMORY (pin_malloc unable to allocate mem, PIN_ERR_NO_MEM) messages in cm.pinlog when running billing.

Purify shows the following leaks:

MLK: 32832 bytes leaked in 114 blocks

* This memory was allocated from:

malloc [rtlib.o]
pcmmem_malloc_flisthdr [PcmMemGroup.cpp]

pin_flist_create_with_size [pin_flist.c]

pin_flist_create [pin_flist.c]

fm_subs_find_rateplan_for_etype [fm_subscription_cycle_utils.c]

fm_subs_forward_add_rate [fm_subscription_cycle_forward.c]

* Block of 288 bytes (114 times); last block at 0xd1a090
FMR: Free memory read:

* This is occurring while in:

strcmp [rtlib.o]

fm_subs_utils_get_rateplan [fm_subscription_cycle_utils.c]

fm_subs_forward_add_rate [fm_subscription_cycle_forward.c]

fm_subs_cf_add_rate_and_call_act_usage [fm_subscription_cycle_forward.c]

op_subscription_cycle_forward [fm_subscription_cycle_forward.c]

cm_pre_pcm_op [cm_utils.c]

* Reading 55 bytes from 0x9698f8 in the heap.

* Address 0x9698f8 is 64 bytes into a freed block at 0x9698b8 of 288 bytes.
* This block was allocated from:

malloc [rtlib.o]

pcmmem_malloc_flisthdr [PcmMemGroup.cpp]

pin_flist_create_with_size [pin_flist.c]

pin_flist_create [pin_flist.c]

pin_flist_elem_add [pin_flist.c]

fm_rate_get_rateplan_list_search [fm_rate_get_rateplan_list.c]

* There have been 0 frees since this block was freed from:

free [rtlib.o]

pcmmem_free_flisthdr [PcmMemGroup.cpp]

pin_flist_destroy [pin_flist.c]

pini_flist_fldval_free [pin_flist.c]

pini_flist_drop [pin_flist.c]

fm_subs_utils_get_rateplan [fm_subscription_cycle_utils.c]


Steps To Reproduce

Create an account with monthly products.
Run PCM_OP_BILL_MAKE_BILL from testnap.


Cause

Sign In with your My Oracle Support account

Don't have a My Oracle Support account? Click to get started

My Oracle Support provides customers with access to over a
Million Knowledge Articles and hundreds of Community platforms