Only some application database inserts/updates are updating in the tables (Doc ID 1275538.1)

Last updated on MARCH 08, 2017

Applies to:

Oracle Business Process Management Suite - Version: 5.7 to 10.3
Information in this document applies to any platform.

Symptoms

The project is making inserts (or any sort of SQL update) into an application database, but not all of the inserts are going through properly, yet there are no errors reported.

After enabling JDBC tracing on the Oracle driver (see below how this was done), in the Oracle Trace logs we see the following:



26791174|12/14/2010 10:01:15 AM|0|0|UNKNOWN|insert into "CITRECOVERY"."CIT_TRACKING"("ACCOUNT_ID","TO_IA","RECEIVED","SEND_COUNT","CU_RETURN_CODE","CU_ERROR_MESSAGE","END_DATE","STATUS") values ('14-12-2010 10:01:14','4',TO_DATE('14-DEC-10', 'DD-MON-RR'),'0',NULL,NULL,NULL,'TEST');
..
...
...
26791187|12/14/2010 10:01:15 AM|0|0|UNKNOWN|commit;
26791188|12/14/2010 10:01:15 AM|0|0|UNKNOWN|
26791188|12/14/2010 10:01:15 AM|0|0|UNKNOWN|delete from "CITRECOVERY"."CIT_TRACKING" where ROWID = 'AAASsOAANAAAACFAAC';
26791189|12/14/2010 10:01:15 AM|0|0|UNKNOWN|rollback;
26791190|12/14/2010 10:01:15 AM|0|0|UNKNOWN|set transaction read write;


As you can see the application performed an insert, but it did not specifically perform a delete by rowid.  So it seems the driver is deleting the row right after it has been inserted.




Here is how to enable the tracing:

Here is the documentation on how to do it:
http://www.oracle.com/technetwork/database/enterprise-edition/11-2.pdf

I've tested this before by using the tracing jars, the ones with the _g in the filename, downloadable from the oracle website:
http://www.oracle.com/technetwork/database/features/jdbc/index-091264.html

you would have to replace the current jar with a trace jar.

Then create a file called OracleLog.properties:

level=SEVERE
oracle.jdbc.level=FINE
oracle.jdbc.handlers=java.util.logging.FileHandler
java.util.logging.FileHandler.level=FINE
java.util.logging.FileHandler.pattern = jdbc.log
java.util.logging.FileHandler.count = 1
java.util.logging.FileHandler.formatter = java.util.logging.SimpleFormatter

add the following properties to the JVM:

-Djava.util.logging.config.file=/jdbc/demo/OracleLog.properties
-Doracle.jdbc.Trace=true

and then restart the jvm and search for the file jdbc.log that it should create which should log all of the insertsl.

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