Thanks, Dan, I'll run a test.

David

Daniel John Debrunner wrote:
David W. Van Couvering wrote:


There is a new metadata call, "autoCommitFailureClosesAllResultSets",
which returns true if a SQLException while autoCommit is true indicates
that all open ResultSets are closed, even ones that are holdable.

In my naive scan of the code on the embedded side, it appears as though
we do *not* close result sets upon exception.  There is a method
clearResultSets() on EmbedStatement that is only called when the
statement itself is closed or when executing a new statement (we close
the old result sets from the previous invocation of the statement).

Because of the asynchronous nature of the network client protocol, it's
a little harder to decode, but it appears that we do not close result
sets upon exception there either.

Does anyone care to differ?  Otherwise I'll return false for this new
JDBC4 metadata call.


I think I'll differ. :-)

In embedded I would think that all the ResultSets would be closed on an
exception that causes a rollback in auto-commit mode. You may not see
explict code, but the internal Derby objects the JDBC ResultSet depends
on will be closed. At least I think it's that way, no idea for client.
Seems like a simple test is in order.

Dan.

begin:vcard
fn:David W Van Couvering
n:Van Couvering;David W
org:Sun Microsystems, Inc.;Database Technology Group
email;internet:[EMAIL PROTECTED]
title:Senior Staff Software Engineer
tel;work:510-550-6819
tel;cell:510-684-7281
x-mozilla-html:TRUE
version:2.1
end:vcard

Reply via email to