Consultor Eletrônico



Kbase P161317: Bulk inserts with the oracle DataServer randomly misses records
Autor   Progress Software Corporation - Progress
Acesso   Público
Publicação   11/03/2010
Status: Unverified

SYMPTOM(s):

Bulk inserts with the oracle DataServer randomly misses records

The regular load utility misses very few records compared to bulk inserts

The DataServer log file shows the error 14944

error text: ---- (14944)

error text: ORA-00001: unique constraint (TABLE.INDEX) violated ---- (14944)

ORA-00001: unique constraint (string.string) violated

FACT(s) (Environment):

The batch file reads input file, and use the Oracle DataServer load utility to insert the record on the oracle database
All Supported Operating Systems
OpenEdge 10.x
Progress 9.1x
Oracle DataServer

CAUSE:

The input file has random duplicate records which causes the issue.


With the regular load utility, Orace dataserver commits on each record. So when the DataServer encounters the duplicate, it skips only that record as the batch program moves to the next line to continue the load from input file.

With the bulk inserts, Oracle dataserver loads multiple records in a chunk and commits it once. So, if it encounters the duplicates, it rolls back the transaction and the batch program moves to the next sets of records to load from input file.

FIX:

This is working as design. To resolve the issue remove the duplicate records from the input file.