E9.2 Ship Confirm failing due to duplicate key violation

MtnDewer

Member
We recently upgraded to 9.2 SP24. T9.2.8.1.

P4205 Shipment Confirmation keeps rolling back updates. When this line of code in B4200310 is executed, it generates 2 identical INSERT statements in the jdedebug log file. This prevents the transaction from committing due to "duplicate key" violations. Has anyone seen this before? Do you know what causes it and how to fix it?

B4200310: function - I4200310_WriteSalesLedgerRcd
called from F4211FSEndDoc

idJDBReturn = JDB_InsertTable(lpds4200310D->hRequestF42199, szTableID,
(ID) 0, (void *)(&dsF42199));/* SAR 2023118 */

Apr 17 14:55:56.751037 - 13684/15100 WRK:Starting jdeCallObject Entering jdeTrackBusinessFunctionUsage
Apr 17 14:55:56.751038 - 13684/15100 WRK:Starting jdeCallObject Exiting jdeTrackBusinessFunctionUsage
Apr 17 14:55:56.751039 - 13684/15100 WRK:Starting jdeCallObject ODBC:I DBInitRequest(new) req=00000162A3617D60,con=00000162A2075930,env=00000162FFA7B890,dbc=00000162FFAAC0E0,spid=0 JDTEST92 M (CP1@Business Data - CRP)
Apr 17 14:55:56.751040 - 13684/15100 WRK:Starting jdeCallObject INSERT INTO CRPDTA/F42199 VALUES ('00001',2328914.000000,'SZ',1002.000000,'000','.... confidential
Apr 17 14:55:56.751041 - 13684/15100 WRK:Starting jdeCallObject INSERT INTO CRPDTA/F42199 VALUES ('00001',2328914.000000,'SZ',1002.000000,'000','....
Apr 17 14:55:56.752000 - 13684/15100 WRK:Starting jdeCallObject Entering DBPerformRequest
Apr 17 14:55:56.752001 - 13684/15100 WRK:Starting jdeCallObject ODBC:I DBPerformRequest req=00000162A3617D60,con=00000162A2075930,env=00000162FFA7B890,dbc=00000162FFAAC0E0,spid=0 JDTEST92 M (CPBREND1@Business Data - CRP)
Apr 17 14:55:56.755000 - 13684/15100 WRK:Starting jdeCallObject ODBC[jdbodbc.c,3869] wSQLExecute failure. rc = -1
Apr 17 14:55:56.755001 - 13684/15100 WRK:Starting jdeCallObject ODBC[jdbodbc.c,3869] STMT:00 [23000][-803] [IBM][System i Access ODBC Driver][DB2 for i5/OS]SQL0803 - Duplicate key value specified.
Apr 17 14:55:56.755002 - 13684/15100 WRK:Starting jdeCallObject ODB0000163 - wSQLExecute failure. rc=-1
Apr 17 14:55:56.757000 - 13684/15100 WRK:Starting jdeCallObject ODB0000164 - STMT:00 [23000][-803][2] [IBM][System i Access ODBC Driver][DB2 for i5/OS]SQL0803 - Duplicate key value specified.
Apr 17 14:55:56.759000 - 13684/15100 WRK:Starting jdeCallObject Exiting DBPerformRequest
Apr 17 14:55:56.759001 - 13684/15100 WRK:Starting jdeCallObject JDB9900401 - Failed to execute db request
Apr 17 14:55:56.760000 - 13684/15100 WRK:Starting jdeCallObject JDB3400009 - Failed to perform Insert for F42199
Apr 17 14:55:56.761000 - 13684/15100 WRK:Starting jdeCallObject JDB9901232 - Canceling transaction because: TC052 InsertTable: Insert failed
Apr 17 14:55:56.763000 - 13684/15100 WRK:Starting jdeCallObject Cancelling Transaction : 1594429868_13684_4876_756182849
Apr 17 14:55:56.763001 - 13684/15100 WRK:Starting jdeCallObject Exiting JDB_InsertTable with Failure (Table F42199)
Apr 17 14:55:56.763002 - 13684/15100 WRK:Starting jdeCallObject Entering jdeCacheFetch - hCursor:[00000162a427b690]
Apr 17 14:55:56.763003 - 13684/15100 WRK:Starting jdeCallObject Entering jdeCacheSetIndex - hCursor:[00000162a427b690]
Apr 17 14:55:56.763004 - 13684/15100 WRK:Starting jdeCallObject Entering jdeCacheFetchPosition - hCursor:[00000162a427b690]
Apr 17 14:55:56.763005 - 13684/15100 WRK:Starting jdeCallObject hCache:[00000162a202d6c0] Nm:[1F42UI11] Recs:1 Curs:1 Hnds:18 Cchs:28 FTCH pos Usr: <Name unavailable> Env: <Name unavailable>
Apr 17 14:55:56.763006 - 13684/15100 WRK:Starting jdeCallObject Entering jdeCacheSetIndex - hCursor:[00000162a427ae50]
Apr 17 14:55:56.763007 - 13684/15100 WRK:Starting jdeCallObject Entering jdeCacheFetchPosition - hCursor:[00000162a427ae50]
Apr 17 14:55:56.763008 - 13684/15100 WRK:Starting jdeCallObject hCache:[00000162a202dae0] Nm:[1F42UI12] Recs:1 Curs:1 Hnds:18 Cchs:28 FTCH pos Usr: <Name unavailable> Env: <Name unavailable>
Apr 17 14:55:56.763009 - 13684/15100 WRK:Starting jdeCallObject Entering jdeCacheFetch - hCursor:[00000162a427b690]
 
Yes. There is a known bug on this at certain release levels. We encountered this yeas ago when first moved to 9.2.
Unfortunately I no longer have access to the details (retired) but the issue is at the BSFN level.
Since we only found this during our pre go live we (I) made our own quick code fix to the issue. However if you search the Oracle support site you should be able to find the bug and hopefully a fix for same.

Cheers,
Larry
 
Back
Top