AH, someone else who has been bitten in the backside by the proverbial Mutex. Welcome to the club. Dick Goulet Senior Oracle DBA/NA Team Lead PAREXEL International -----Original Message----- From: oracle-l-bounce@xxxxxxxxxxxxx [mailto:oracle-l-bounce@xxxxxxxxxxxxx] On Behalf Of Martin Klier Sent: Wednesday, August 04, 2010 9:07 AM To: Oracle-L Freelists Cc: Tanel Poder Subject: Oracle 11.2: Cursor Mutex S wait event and too many (2^30) child cursors Hi listers, not at least with help from this list (Tanel and others) I was able to sort out a nasty situation with Oracle 11gR2's child cursors. Details are here: http://www.usn-it.de/index.php/2010/08/04/oracle112-mutex-s-too-many-chi ld-cursors/ Summary: If you use JDBC and set numeric values with setInteger or setNumber or setNull alternately, you can get excessive numbers of child cursors for your DML statement. Solution: Use setNull.NUMBER or setNull.INTEGER or whatever your datatype is. Why? setNull defaults to VARCHAR2() and this will invalidate your child cursor... By the way, the same happens if you are subsequently extending string bind variable lenghts, until you reach the maximum length! Best regards and thanks for all your help in the past, not only for this issue Martin Klier -- Usn's IT Blog for Linux, Oracle, Asterisk http://www.usn-it.de -- //www.freelists.org/webpage/oracle-l -- //www.freelists.org/webpage/oracle-l