Tuesday, December 12, 2017

PDC issues and fixes




    Issues#1: PDC import is failing with the following error:

 [exec] Error during- Import
     [exec] EJBException: Unknown reason: BEA1-047E79AE2C611898D0B8; nested exception is:
     [exec]     javax.transaction.HeuristicMixedException: (PricingDB_pdc_domain, HeuristicHazard, ()) ; nested exception is: javax.transaction.HeuristicMixedException: (PricingDB_pdc_domain, HeuristicHazard, ())
     [echo] Waiting 30 seconds for import to finish.

    Solution: Change XA Retry Interval to 0 in
     



    Issues#2: Sequential Discount configuration doesn't work when discounts configured using PDC
    Solution: Set the grant_period_offset for the discounts which need sequential discount configurations:

                 update ifw_dscbalimpact set grant_period_offset=-1;
                 commit;


Issues#3: Prorate discounts for fixed discount configurations        
Solution: Add ProrateFixedDiscount entry in the discount pipeline's registry:

            ApolloDiscountModule
            {
              ModuleName = FCT_Discount
              Module
              {
                Active                   = TRUE
                DiscountDataModule       = ifw.DataPool.DiscountModelDataModule
                BalanceDataModule        = ifw.DataPool.BalanceDataModule
                AccountDataModule        = ifw.DataPool.CustomerData
                CurrencyDataModule       = ifw.DataPool.CurrencyDataModule
                DiscountMoreThanPossible = False
                TaxationMode             = 3   #[0-3] needs to in sync with 'taxation_switch' entry in pin.conf
                DiscountTrace            = FALSE
                ProrateFixedDiscount     = true
              }
            }

Monday, October 23, 2017

Realtime Discounting Pipeline Reports "discount model: () is invalid" In Discount Trace






Debugging Realtime Discounting Pipeline Reports "discount model: () is invalid" In Discount Trace


#### BEGIN transaction: 3169

-----> DETAIL Container::isValidDetail: 1, Pipeline: 0
Account DB#: 1, ID: 234522
discount model: () is invalid, valid flag: 3


The VALID_FLAG values, see below for the different values and their meaning :
1 ==> valid
2 ==> invalid purchase start or end time
3 ==> invalid usage start or end time
4 ==> invalid sponsorship start or end time
5 ==> invalid discount/sponsorship object id
6 ==> no usage map for event type
7 ==> invalid usage map for event type

If it fails with valid flag: 5, it could be a problem with the way pipeline is restarted. CM should start after pipeline and you should not see listen with the port using following command:

lsof -i|grep 10803
ifw       24438 pin08   35u  IPv6 447623857      0t0  TCP *:10803 (LISTEN)

Check for any extra RTP processes running before start RTP

Migrating PDC data from one system to another

Given System “A” with BRM and PDC and System “B” with BRM and PDC, following is the process for moving new or changed pricing data from ...