My Oracle Support Banner

Deadlock Detected During PCM_OP_PYMT_COLLECT Execution (Doc ID 2464191.1)

Last updated on FEBRUARY 03, 2019

Applies to:

Oracle Communications Billing and Revenue Management - Version 7.5.0.0.0 and later
Information in this document applies to any platform.

Symptoms

During the collection actions which attempts to collect payments, the PCM_OP_PYMT_COLLECT opcode is called from a custom code.
The issue reported is that execution of PCM_OP_BILL_COLLECT is triggering a deadlock on BAL_GRP_T table and because of the deadlock the order will fail eventually.

NOTE:
-----
In the custom code, the following opcodes are execute sequentially: CANCEL_DEAL, PURCHASE_DEAL, PYMT_COLLECT.



STEPS TO REPRODUCE:
---------------------------
The issue can be reproduced at will with the following steps:
1. Create account on Sep21 with monthly plan;

2. Move Pin_virtual_time (pvt) to next BDOM (Bill Day of Month);

3. Open Transaction as -
    local_trans = fm_utils_trans_open(ctxp, PCM_TRANS_OPEN_LOCK_OBJ, account_poidp, ebufp);

4. Invoke PCM_OP_SUBSCRIPTION_CANCEL_DEAL opcode;

5. Invoke PCM_OP_SUBSCRIPTION_PURCHASE_DEAL opcode;

6. Collect payments by running Invoke PCM_OP_PYMT_COLLECT opcode. This will lead to a database lock.

Changes

 

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
Changes
Cause
Solution
References


My Oracle Support provides customers with access to over a million knowledge articles and a vibrant support community of peers and Oracle experts.