My Oracle Support Banner

MDO Weekly Processing Performance Is Excessively Poor Resulting In Failed Batch (Doc ID 2923036.1)

Last updated on JANUARY 24, 2023

Applies to:

Oracle Retail Markdown Optimization - Version 13.4 and later
Information in this document applies to any platform.

Goal

Why is the weekly processing of Oracle Retail Markdown Optimization model engine performance incredibly slow until finally failing. The following error is seen in the log.

Running step price/calceng.model.run.sh (59/90):
...
Starting model run across <SERVERS>
Model run pass 1 started.
Waiting for run to complete...
WARNING: Some worker threads did not complete successfully.
Model run pass 2 started.
Waiting for run to complete...
WARNING: Some worker threads did not complete successfully.
Model run pass 3 started.
Waiting for run to complete...
WARNING: Some worker threads did not complete successfully.
The model run for job 8426 is done.
Step ended at <DATE_TIMESTAMP>

 

Running step price/check.model.run.success.sh (62/90):
Failure: Run is not complete. Missing: 1790403 out of 4078657, Errors: 1066
FATAL: Failed to successfully complete the run!

 

The program encountered a condition it was unable
to handle gracefully. Here is the error message:
Numeric Overflow

and the stack trace:

java.sql.SQLException: Numeric Overflow
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:113)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:147)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:209)
at oracle.jdbc.driver.NumberCommonAccessor.throwOverflow(NumberCommonAccessor.java:7465)
at oracle.jdbc.driver.NumberCommonAccessor.getInt(NumberCommonAccessor.java:123)
at oracle.jdbc.driver.OracleResultSetImpl.getInt(OracleResultSetImpl.java:527)
at com.profitlogic.didyma.db.QueryContext$1.readRow(QueryContext.java:474)
at com.profitlogic.common.persistence.DBQuery$1.readRow(DBQuery.java:415)
at com.profitlogic.common.persistence.DBQuery.selectAndDiscard(DBQuery.java:296)
at com.profitlogic.common.persistence.DBQuery.select(DBQuery.java:405)
at com.profitlogic.common.persistence.DBQuery.select(DBQuery.java:360)
at com.profitlogic.jcl.DBInterfaceLayer.select(DBInterfaceLayer.java:144)
at com.profitlogic.didyma.db.QueryContext.getNextSequenceValue(QueryContext.java:461)
at com.profitlogic.didyma.db.QueryContext.logStatusHistoryfromStatusSummary(QueryContext.java:326)
at com.profitlogic.workflow.MarkdownWorkflow.logStatusHistoryfromStatusSummary(MarkdownWorkflow.java:300)
at com.profitlogic.workflow.MarkdownWorkflow.logExceptionWithHistory(MarkdownWorkflow.java:323)
at com.profitlogic.workflow.MarkdownWorkflow.process(MarkdownWorkflow.java:122)
at com.profitlogic.microbatch.MicroBatch.process(MicroBatch.java:126)
at com.profitlogic.jcl.Chunker.processChunks(Chunker.java:605)
at com.profitlogic.jcl.JobController.main(JobController.java:550)


 

Solution

To view full details, 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 a vibrant support community of peers and Oracle experts.