Re: Fwd: 11gR2: More than thousand child cursors for an update

From: Martin Klier <usn_at_usn-it.de>
Date: Mon, 19 Jul 2010 09:52:12 +0200
Message-ID: <4C44042C.1070309_at_usn-it.de>



Hi Tanel,

thanks for your reply, and sorry for the late response, I really appreciate your help.

The statement has 47 bind variables, it's a kind of ADO that does update every column if you are changing only one of them. So we are rather vulnerable for bind graduation issues in connection with bind data type changes.

The application indeed is JDBC. It's running with a jdbc library of version 11.1.0.7 until today 2 pm GMT, after this time the lib will be of version 11.2.0.1.

In the meantime, we have collected some additional interesting facts: - the application did cause an equal number of child cursors in 10g, but without the Mutex S wait events
- Oracle Support stated, that "Its important to note that cursor obsoletion code was removed in version 11. That means we no longer obsolete a parent cursor when it reaches 1024 child cursors." - The application uses lots of numeric fields, being set with JDBC setter methuds, like "setNumber", and "setNull". But using setNull, the bind variable does change its data type to VARCHAR2, otherwise it's Number.

Tanel Poder schrieb:
> So, how many bind variables do you have in that update statement?

Best regards
Martin

-- 
Usn's IT Blog for Linux, Oracle, Asterisk
http://www.usn-it.de


--
http://www.freelists.org/webpage/oracle-l
Received on Mon Jul 19 2010 - 02:52:12 CDT

Original text of this message