How To Troubleshoot The Data Load Error 'The Specified Error Threshold Has Been Exceeded For This Load Procedure' (Doc ID 1071048.1)

Last updated on JUNE 05, 2017

Applies to:

Oracle Retail Markdown Optimization - Version 4.1 and later
Oracle Retail Clearance Optimization Engine - Version 13.0.0 and later
Information in this document applies to any platform.
*** Checked for relevance on 17-Dec-2013 ***

Goal

The goal of this document is to provide troubleshooting steps on resolving an Oracle Retail Markdown Optimization (MDO) or Oracle Retail Clearance Optimization Engine (COE) application weekly processing data failure.  There are standard data loads and optional data loads for the MDO application.  Each data load may fail data validation causing an automation failure during the weekly load process.  Please reference the MDO or product documentation Operations Guide for your version for detailed information on the data load process and standard errors.

The example scenario is for a 'budget.dat' load failure.

1. During the weekly batch, a load fails.
2. Check the logs to determine the cause of the failure. The log directory may be set in the LOGDIR environment variable or it may be specified in the load scripts. Check the log directory specific to your implementation.

From the Unix prompt execute the following in the log directory:

ls -altr *Budget*

 

Example Results:
com.profitlogic.db.birch.LoadBudget.err
com.profitlogic.db.birch.LoadBudget.log
com.profitlogic.db.birch.LoadBudget.out


And see the following in the logs (above):

Running method com.profitlogic.db.birch.LoadBudget.setUp in schema price@MDO ...

Spawning 1 process(es) to run method com.profitlogic.db.birch.LoadBudget.runPreLoadVerification in schema price@MDO ...

Running method com.profitlogic.db.birch.LoadBudget.finishPreLoadVerification in schema price@MDO ...

[2010-02-05 13:06:40,551] P4PStatus :
P4PCode: 50
P4PState: P4P-00050
P4PMessage: The specified error threshold has been exceeded for this load
procedure.
ModuleId: com.profitlogic.db.birch.LoadBudget
[2010-02-05 13:06:40,588] LoadMerchandiseHierarchy : Finished
LoadBudget.finishPreLoadVerification with exception
java.lang.reflect.InvocationTargetException
com.profitlogic.db.common.exception.P4PException: Exception <P4P-00050: The
specified error threshold has been exceeded for this load procedure.> occured in
module com.profitlogic.db.birch.LoadBudget
at com.profitlogic.db.common.exception.P4PStatus.setP4PStatus(Unknown Source)
at com.profitlogic.db.common.exception.P4PStatus.setP4PStatus(Unknown Source)
at com.profitlogic.db.common.LoadProcedure.finishPreLoadVerification(Unknown
Source)
at com.profitlogic.db.birch.LoadBudget.finishPreLoadVerification(Unknown
Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(NativeMethodAccessorImpl.java)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java)
at java.lang.reflect.Method.invoke(Method.java)
at com.profitlogic.db.common.LoadProcessor$2.perform(Unknown Source)
at com.profitlogic.db.common.AbstractTimedTask.runInternal(Unknown Source)
at com.profitlogic.db.common.AbstractTimedTask.run(Unknown Source)
at com.profitlogic.db.common.LoadProcessor.runMethod(Unknown Source)
at com.profitlogic.db.common.LoadProcessor.runMethod(Unknown Source)
BEGIN runmethod('com.profitlogic.db.birch.LoadBudget', 'finishPreLoadVerification'); END;

*
ERROR at line 1:
ORA-29532: Java call terminated by uncaught Java exception:
com.profitlogic.db.common.exception.P4PException: Exception <P4P-00050: The
specified error threshold has been exceeded for this load procedure.> occured
in module com.profitlogic.db.birch.LoadBudget
ORA-06512: at "PRICE.RUNMETHOD", line 1
ORA-06512: at line 1


Running method com.profitlogic.db.birch.LoadBudget.finishPreLoadVerification in SQL*Plus command returned non-zero exit status (2)!
Running method com.profitlogic.db.birch.LoadBudget.tearDown in schema price@MDO ...



Elapsed time for procedure com.profitlogic.db.birch.LoadBudget : 00:00:03 (3 sec)


3.  The conclusion is the automation failure was caused by 'bad' data in the budget load; the error message means that the error threshold set for the budget data load has been exceeded.

The error 'com.profitlogic.db.common.exception.P4PException: Exception <P4P-00050: The
specified error threshold has been exceeded for this load procedure.> occured in
module com.profitlogic.db.birch.LoadBudget' is visible in the 'LoadBudget.out' and 'LoadBudget.err' unix log.


4. View the data in the ASH_BUDGET_TBL_BAD to find out why the data failed the MDO data validation process during the 'LOAD_BUDGET' step.

select * from ASH_BUDGET_TBL_BAD;

 

The ERROR_DESC column provides details on why the row failed.
For Example:
 'Merchandise found that does not exist in MERCHANDISE_HIERARCHY_TBL at the required level (Worksheet)'


There are no matching merchandise records in the MERCHANDISE_HIERARCHY_TBL for the rows of data that failed the 'LOAD_BUDGET' step; resulting in the data being updated to the ASH_BUDGET_TBL_BAD database table. Due to the data load threshold that is set for the 'LOAD_BUDGET' step, this ultimately caused a failure during the load process.

Please refer to the following Oracle Knowledge Management Document to review the threshold settings 'How To Check the Data Load Threshold Settings for Oracle Retail Markdown Optimization Application (Doc ID 1070617.1)'

Solution

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