Business Connector SQL transaction processing


I have a Business Connector installation which gets IDocs from an SAP system from which it maintains a customer Oracle table. The problem is arising by two or more Idocs sent simultaneously to Business Connector. The first transaction inserts the customer into the Oracle table. The subsequent transaction arrives so quickly that the record has not yet been inserted. A SELECT finds that there is no existing record in Oracle, so it tries a second INSERT. However by this time the record has been inserted by the first transaction, resulting in a “unique constraint violated” SQL error. How can Business Connector handle this? If I have it enclose the “select > insert or update” sequence in a startTransaction … commit envelope, will the second transaction then get an error when it tries to read the record which is locked because it hasn’t yet committed? Or will BC or Oracle be “smart” enough to wait a millisecond and try to re-read the record?

Carl Champney
Antioch Company