SALSTAGE Batch Does Not Process All the Records If Aborted and Restarted (Doc ID 1546996.1)

Last updated on FEBRUARY 05, 2017

Applies to:

Oracle Retail Merchandising System - Version 13.1.4 to 13.1.7 [Release 13.1]
Information in this document applies to any platform.
Checked for relevance on 02-Oct-2014

Symptoms

SALSTAGE proc batch does not process all records for the current day, if aborted and restarted.  Normally, SALSTAGE processes the records from TRAN_DATA (TRAN_DATA_A and TRAN_DATA_B) and inserts into IF_TRAN_DATA.

During execution of SALSTAGE, if the batch aborts due to some locking problems and/or errors like 'Resource busy NO WAIT' and is later restarted to process further records, the second run will be completed.  However, there is a scope for potential data loss scenarios due to incorrect save/commit points in the batch code.

Steps to Recreate:

1. Execute the SALSTAGE program.
2. Batch aborts due to 'Resource busy NO WAIT' error.
3. Restart/rerun SALSTAGE program with restart_flag = ‘Y’.  Run will be successful.
4. Check the data in TRAN_DATA_A/TRAN_DATA_B/IF_TRAN_DATA.  Though batch runs to completion successfully, the tables were not truncated.

 

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