I don't know if this is relevant, but FYI:

There is an issue with ResultSet closing and the Jakarta DBCP connection
pooling software.
DBCP does not work with some JDBC drivers because DBCP tries to close a
ResultSet object after closing a statement that created that object. JDBC
specification states that when a statement is closed, all open result sets
are also closed. Calling ResultSet.close() after Statement.close() causes
close operation to be performed on already closed result set. This is
explicitly not allowed in some JDBC drivers. It causes
java.sql.SQLException.

DBCP team already had a problem with Oracle JDBC where calling
ResultSet.close() twice caused NullPointerException inside Oracle JDBC
driver (see bug description). However Oracle fixed NullPointerException in
the next version of the driver and this bug was closed without fixing with a
comment "The ResultSet javadoc does not say that close() cannot be called
more than once and Oracle has fixed the problem.".

Some JDBC drivers have workarounds for this.  For example, JayBird 1.5 RC3
introduced a new  parameter - isc_dpb_paranoia_mode. When it is set, the
driver will throw java.sql.SQLException in such situations. By default it is
not set, therefore calling ResultSet.close() twice does not cause an error.



Rick

----- Original Message ----- 


_______________________________________________
Juglist mailing list
[EMAIL PROTECTED]
http://trijug.org/mailman/listinfo/juglist_trijug.org

Reply via email to