Rounding Errors Introduced By The FCT_CreditLimitCheck Plugin (Doc ID 950402.1)

Last updated on JULY 28, 2017

Applies to:

Oracle Communications Billing and Revenue Management - Version 7.3.0.0.0 and later
Information in this document applies to any platform.
This problem can occur on any platform.

Symptoms

Problem Statement:

In the FCT_CreditLimitCheck plugin, Rounding errors are thrown.

 Steps To Reproduce:
1) CM calculates authorization quantity of 21 seconds with impact of 0.168 (full resource usage)
2) CM rounds the impact to two decimal places giving impact of 0.17
3) FCT_CreditLimit detects violation of credit limit (-0.168 + 0.17 = +0.002)
4) FCT_CreditLimit determines that one can get 0.25 sec of service for the over-the-limit amount (0.002)
5) FCT_CreditLimit subtracts 0.25 from authorized quantity, and 0.002 from the balance impact, leaving event with authorized quantity at 20.7529411764706 and impact at 0.168

Please note that we begun with impact of 0.168 for 21 secs and finished with the same impact for ~20.75 secs.

Perceived problems are:

1) authorization quantity re-calculation in pipeline is prone to arithmetic errors

2) pipeline ignores rounding configured in BRM (it did return impact of 0.168, where we're rounding to two decimal places)

3) (connected with problem no 2) pipeline compares credit limit value against unrounded impact

In our stance, the correct behavior in this example would be to authorize for 20 secs with impact of 0.16.i

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