db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "V.Narayanan (JIRA)" <derby-...@db.apache.org>
Subject [jira] Commented: (DERBY-694) Statement exceptions cause all the connection's result sets to be closed with the client driver
Date Thu, 27 Jul 2006 06:49:14 GMT
    [ http://issues.apache.org/jira/browse/DERBY-694?page=comments#action_12423780 ] 
V.Narayanan commented on DERBY-694:

The following test cases would test the patch in greater detail

1) Generate a case which will cause a ABNUOWRM that will cause the severity to be greater
     STATEMENT_SEVERITY. I tried a case that cause a timeout. This is what I did in the test
     1.a) created connection1 set transaction isolation level as Connection.TRANSACTION_SERIALIZABLE
     1.b) set auto commit to false
     1.c) created a prepared statement to update a table
     1.d) executed the prepared statement
     1.e) created connection2 and a prepared statement from it and did a select from the same
 table without    
           commiting the earlier transaction
     1.f) it caused a timeout as expected but did'nt result in a ABNUOWRM
     The test case that currently shows how this bug occurs would work fine if the patch were
applied (i.e) the      
     result sets other than the one in which the division by zero occurs would'nt close but
then the case when a 
    severity of greater than STATEMENT_SEVERITY occurs needs to be tested to ensure that all
    UnitOfWorkListeners are rolled back.

2) We also need a test case that would casue an ABNUOWRM from a Lob object. This would help
us test 
     whether the above bug occurs with Lob objects.

I have'nt been able to generate cases 1 and 2. The test suite for the patch would'nt be complete
without the above cases. I most humbly request for inputs from anyone who knows how to generate
the above cases.


> Statement exceptions cause all the connection's result sets to be closed with the client
> -----------------------------------------------------------------------------------------------
>                 Key: DERBY-694
>                 URL: http://issues.apache.org/jira/browse/DERBY-694
>             Project: Derby
>          Issue Type: Bug
>          Components: Network Client
>    Affects Versions:
>            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, 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


View raw message