Valgrind Memory Leakage Issue for OOB Codes (Doc ID 2069668.1)

Last updated on SEPTEMBER 16, 2016

Applies to:

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

Symptoms

On :  7.5.0.10.0 version, CM

While testing the code with valgrind Tool, memory leak has been detected in OOB opcodes:
PCM_OP_AR_GET_ACCT_ACTION_ITEMS
PCM_OP_BILL_GET_ITEM_EVENT_CHARGE_DISCOUNT
and etc

STEPS
-----------------------
The issue can be reproduced at will with the following steps:
1. disable mempool in cm's pin.conf:

- - disable_pcm_mempool 1

2. start cm via valgrind (edit the paths as needed):

/usr/bin/valgrind
--log-file=/tmp/cm_valgrind.vglog --trace-children=yes
--demangle=yes --leak-check=full --show-reachable=yes --track-origins=yes
--track-fds=yes --num-callers=48 /pinhome/pin02/opt/portal/7.5/bin/cm

3.  Prepare an input flist and run via testnap.

#PCM_OP_AR_GET_ACCT_ACTION_ITEMS
# number of field entries allocated 20, used 8
0 PIN_FLD_POID           POID [0] 0.0.0.1 /account 1175086 8
0 PIN_FLD_AMOUNT_INDICATOR    INT [0] 0
0 PIN_FLD_STATUS         ENUM [0] 6
0 PIN_FLD_INCLUDE_CHILDREN    INT [0] 1
0 PIN_FLD_POID_TYPE       STR [0] "/item/payment,/item/payment/reversal"
0 PIN_FLD_END_T        TSTAMP [0] (1443032999) Wed Sep 23 11:29:59 2015
0 PIN_FLD_AR_BILLINFO_OBJ   POID [0] 0.0.0.1 /billinfo 1174830 2
0 PIN_FLD_START_T      TSTAMP [0] (1425148200) Sat Feb 28 10:30:00 2015
#PCM_OP_BILL_GET_ITEM_EVENT_CHARGE_DISCOUNT
0 PIN_FLD_POID           POID [0] 0.0.0.1 /account  8
0 PIN_FLD_BILLINFO_OBJ   POID [0] 0.0.0.1 /billinfo 1174830 0
0 PIN_FLD_ITEMS         ARRAY [0] allocated 20, used 1
1     PIN_FLD_ITEM_OBJ       POID [0] 0.0.0.1 /item/cycle_forward 1178100 2
0 PIN_FLD_THRESHOLD       INT [0] 1000
0 PIN_FLD_BILL_OBJ       POID [0] 0.0.0.1 /bill 1174318 0

4. exit from testnap and stop the cm

5. checked the cm_valgrind.vglog and see the memory leak:

********************************
==12451== 36 bytes in 1 blocks are still reachable in loss record 226 of 559
==12451==    at 0x6CDB903: malloc (vg_replace_malloc.c:195)
==12451==    by 0x6D88EBB: pcpxdr_create (in /pinhome/pin131/BD1/libcmpin.so)
==12451==    by 0x6D8693E: pcp_receive_no_trans_cleanup (in /pinhome/pin131/BD1/libcmpin.so)
==12451==    by 0x6D8714C: pcp_receive (in /pinhome/pin131/BD1/libcmpin.so)
==12451==    by 0x796C019: cm_login (in /pinhome/pin131/opt/portal/7.5/sys/cm/cm_login_pw001.so)
==12451==    by 0x6ECD2EB: cm_child (in /pinhome/pin131/opt/portal/7.5/lib/libcm_main.so)
==12451==    by 0x6EDDDC7: mainThread (in /pinhome/pin131/opt/portal/7.5/lib/libcm_main.so)
==12451==    by 0x80487DD: main (in /pinhome/pin131/opt/portal/7.5/bin/cm)
==12451==
==12451== 36 bytes in 1 blocks are still reachable in loss record 227 of 559
==12451==    at 0x6CDB903: malloc (vg_replace_malloc.c:195)
==12451==    by 0x6D88EBB: pcpxdr_create (in /pinhome/pin131/BD1/libcmpin.so)
==12451==    by 0x6D862A0: pcp_send (in /pinhome/pin131/BD1/libcmpin.so)
==12451==    by 0x6D7D28D: pcm_op_ex (in /pinhome/pin131/BD1/libcmpin.so)
==12451==    by 0x6D7C88B: pcm_op (in /pinhome/pin131/BD1/libcmpin.so)
==12451==    by 0xEC82FFE: fm_act_find_search_service (in /pinhome/pin131/opt/portal/7.5/lib/fm_act.so)
==12451==    by 0xEC82143: fm_act_find_search_singledb (in /pinhome/pin131/opt/portal/7.5/lib/fm_act.so)
==12451==    by 0xEC80D85: fm_act_find_search (in /pinhome/pin131/opt/portal/7.5/lib/fm_act.so)
==12451==    by 0xEC80AF4: op_act_find (in /pinhome/pin131/opt/portal/7.5/lib/fm_act.so)
==12451==    by 0x6D5D5D1: cm_pre_pcm_op (in /pinhome/pin131/BD1/libcmpin.so)
==12451==    by 0x6D7CD25: pcm_op_ex (in /pinhome/pin131/BD1/libcmpin.so)
==12451==    by 0x6D7C88B: pcm_op (in /pinhome/pin131/BD1/libcmpin.so)
==12451==    by 0xEC86FF8: fm_act_find_verify_search (in /pinhome/pin131/opt/portal/7.5/lib/fm_act.so)
==12451==    by 0xEC86212: op_act_find_verify (in /pinhome/pin131/opt/portal/7.5/lib/fm_act.so)
==12451==    by 0x6D5D5D1: cm_pre_pcm_op (in /pinhome/pin131/BD1/libcmpin.so)
==12451==    by 0x6D7CD25: pcm_op_ex (in /pinhome/pin131/BD1/libcmpin.so)
==12451==    by 0x6D7C88B: pcm_op (in /pinhome/pin131/BD1/libcmpin.so)
==12451==    by 0xEC9391F: fm_act_login_findserv (in /pinhome/pin131/opt/portal/7.5/lib/fm_act.so)
==12451==    by 0xEC932EF: op_act_login (in /pinhome/pin131/opt/portal/7.5/lib/fm_act.so)
==12451==    by 0x6D5D5D1: cm_pre_pcm_op (in /pinhome/pin131/BD1/libcmpin.so)
==12451==    by 0x6D7CD25: pcm_op_ex (in /pinhome/pin131/BD1/libcmpin.so)
==12451==    by 0x6D7C88B: pcm_op (in /pinhome/pin131/BD1/libcmpin.so)
==12451==    by 0x796CE8A: cm_login (in /pinhome/pin131/opt/portal/7.5/sys/cm/cm_login_pw001.so)
==12451==    by 0x6ECD2EB: cm_child (in /pinhome/pin131/opt/portal/7.5/lib/libcm_main.so)
==12451==    by 0x6EDDDC7: mainThread (in /pinhome/pin131/opt/portal/7.5/lib/libcm_main.so)
==12451==    by 0x80487DD: main (in /pinhome/pin131/opt/portal/7.5/bin/cm)
==12451==
********************************

 

Changes

 

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