Yes, a SQL*Net break/reset happens when an error/unhandled exception is raised during a call (which means that the call executed didn't complete normally, thus the call state must be reset). The approach of "insert -> if failed then update" is basically what MERGE does. You need to change the application to use MERGE command. Alternatively you could use an "update -> if no-rows-updated then insert" approach, but MERGE makes much more sense nowadays. -- Regards, Tanel Poder http://blog.tanelpoder.com <http://blog.tanelpoder.com/> _____ From: oracle-l-bounce@xxxxxxxxxxxxx [mailto:oracle-l-bounce@xxxxxxxxxxxxx] On Behalf Of Peter Hitchman Sent: Wednesday, April 09, 2008 03:55 To: oracle-l Subject: Wait event SQL*Net break/reset to client caused by duplicate insert? Hi, Oracle 1.1.06 RAC on OEL 4 64 bit. We are seeing an insert statement reporting "SQL*Net break/reset to client" as over 1/3 of its time. On the face of it this event suggests network issues but nothing else backs this up as the cause. So I looked at the Java code in question and a trace of one of the sessions. What is happening is that an attempt is made to insert a row, most of the time a duplicate error results, the code catches this exception and does an update. I was wondering if its the duplicate error and the exception handling which results in this wait event showing up. All insights welcome Regards Pete