
|
[oracle-l]
||
[Date Prev]
[04-2008 Date Index]
[Date Next]
||
[Thread Prev]
[04-2008 Thread Index]
[Thread Next]
RE: Wait event SQL*Net break/reset to client caused by duplicate insert?
- From: Tanel Poder <tanel.poder.003@xxxxxxx>
- To: pjhoraclel@xxxxxxxxx, "'oracle-l'" <oracle-l@xxxxxxxxxxxxx>
- Date: Thu, 10 Apr 2008 00:04:57 +0800
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
|

|