Last updated on JULY 11, 2012

Applies to:

Oracle Communications Billing and Revenue Management - Version to [Release 7.3.1]
Information in this document applies to any platform.


Problem Statement

PCM_OP_BILL_GET_ITEM_EVENT_CHARGE_DISCOUNT is leaking vast amounts of memory. The problem is in fm_bill_parse_events function of fm_bill_get_item_event_charge_discount.c. In the while loop the return flist from PCM_OP_BILL_POL_GET_EVENT_SPECIFIC_DETAILS is not destroyed until the exit of the function.
Therefore if an Item has 1000 event, 999 return flist are not destroyed.

Memory report :

==8291== 13,002,662 (2,918,784 direct, 10,083,878 indirect) bytes in
9,115 blocks are definitely
lost in loss record 84 of 84
==8291== at 0x43BC3C0: malloc (vg_replace_malloc.c:149)
==8291== by 0x444C074: PcmMemPool::mallocFromSystemHeap() (in
==8291== by 0x444BAF9: PcmMemPool::mallocFromPool() (in
==8291== by 0x4449E0F: pcmmem_malloc_flisthdr (in
==8291== by 0x446BF41: pin_flist_create_with_size (in
==8291== by 0x446BEE3: pin_flist_create (in
==8291== by 0x801C37C: fm_bill_pol_event_specific_search (in
==8291== by 0x801C14C: op_bill_pol_get_event_specific_details (in
==8291== by 0x4432788: cm_pre_pcm_op (in
==8291== by 0x444C816: pcm_op_ex (in
==8291== by 0x444C3BF: pcm_op (in /home/pin/brm3/opt/lib/libcmpin.so)
==8291== by 0x8911820: fm_bill_parse_events (in



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