[ http://issues.apache.org/jira/browse/DERBY-694?page=all ]
V.Narayanan updated DERBY-694:
------------------------------
Attachment: DERBY-694_v4.diff
DERBY-694_v4.stat
I was earlier checking for the severity of the exception by,
netSqlca.getSqlCode() > ExceptionSeverity.STATEMENT_SEVERITY
I realized that a better way of doing this would be
ExceptionUtil.getSeverityFromIdentifier(netSqlca.getSqlState()) >
ExceptionSeverity.STATEMENT_SEVERITY
I can get the SQLState of the exception from netSqlca.getSqlState(). I
understood the NetSqlca class as holding the values of the parsing of SQLCA
obtained from a ABNUOWRM. The severity of this exception can be derived using
the method
ExceptionUtil.getSeverityFromIdentifier. This can then be used to ensure that
the severity of the exception is lesser than STATEMENT_SEVERITY.
I have modified my patch to do this. I am submitting the same.
What I not been able to do is to generate an ABNUOWRM with a severity >
STATEMENT_SEVERITY. I will however submit a patch testing the case pointed out
in this issue after running derbyall by tomorrow.
thanx
Narayanan
> Statement exceptions cause all the connection's result sets to be closed with
> the client driver
> -----------------------------------------------------------------------------------------------
>
> Key: DERBY-694
> URL: http://issues.apache.org/jira/browse/DERBY-694
> Project: Derby
> Issue Type: Bug
> Components: Network Client
> Affects Versions: 10.1.1.1
> Reporter: Oyvind Bakksjo
> Assigned To: V.Narayanan
> Priority: Minor
> Attachments: DERBY-694.html, DERBY-694_upload_v1.diff,
> DERBY-694_upload_v1.stat, DERBY-694_v2.diff, DERBY-694_v2.stat,
> DERBY-694_v3.diff, DERBY-694_v3.stat, DERBY-694_v4.diff, DERBY-694_v4.stat,
> StatementRollbackTest.java
>
>
> Scenario:
> Autocommit off. Have two prepared statements, calling executeQuery() on both,
> giving me two result sets. Can fetch data from both with next(). If one
> statement gets an exception (say, caused by a division by zero), not only
> this statement's result set is closed, but also the other open resultset.
> This happens with the client driver, whereas in embedded mode, the other
> result set is unaffected by the exception in the first result set (as it
> should be).
--
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators:
http://issues.apache.org/jira/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira