[ 
https://issues.apache.org/jira/browse/DERBY-1831?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Kathey Marsden updated DERBY-1831:
----------------------------------

    Issue & fix info: Repro attached  (was: High Value Fix,Repro attached)

Taking off High Value Fix. I think this is somewhat hard to fix.

                
> After a database shutdown, Network Server should invalidate all active 
> connections and an appropriate error message should be thrown at the client 
> while using those connections later.
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-1831
>                 URL: https://issues.apache.org/jira/browse/DERBY-1831
>             Project: Derby
>          Issue Type: Bug
>          Components: Network Server
>    Affects Versions: 10.0.2.0, 10.0.2.1, 10.1.1.0, 10.1.2.1, 10.1.3.1
>         Environment: Any
>            Reporter: Rajesh Kartha
>              Labels: derby_triage10_9
>
> Any connections currently open during the shutdown should be invalidated. 
> This would indicate the correct info - that there are no open connections 
> during the 'show connections' command and the subsequent 'set connection' and 
> sql should fail with appropriate errors. It works as expected in embedded 
> mode, but it is more important to behave accordingly in the case of Network 
> Server where multiple users are connected, rather than throw an obscure error 
> of "ERROR 58009: A network protocol error was encountered and the connection 
> ............. implementation-specific condition for which there was no 
> architected message " 
> ij version 10.2
> ij> connect 'jdbc:derby://localhost:1527/testdb;create=true' as connA;
> ij> drop table t;
> 0 rows inserted/updated/deleted
> ij> create table t (id int);
> 0 rows inserted/updated/deleted
> ij> insert into t values (1);
> 1 row inserted/updated/deleted
> ij> insert into t values (2);
> 1 row inserted/updated/deleted
> ij> select * from t;
> ID
> -----------
> 1
> 2
> 2 rows selected
> -- 
> --Connection A is still open
> -- 
> ij> connect 'jdbc:derby://localhost:1527/testdb' as connB;
> ij(CONNB)> insert into t values (3);
> 1 row inserted/updated/deleted
> ij(CONNB)> select * from t;
> ID
> -----------
> 1
> 2
> 3
> 3 rows selected
> -- 
> -- Should error out saying there are open connections to the database
> -- 
> ij(CONNB)> connect 'jdbc:derby://localhost:1527/testdb;shutdown=true';
> ERROR 08006: DERBY SQL error: SQLCODE: -1, SQLSTATE: 08006, SQLERRMC: 
> Database 'testdb' shutdown.
> ij(CONNB)> disconnect;
> -- 
> --Connection A is still open
> -- 
> ij> show connections;
> CONNA - jdbc:derby://localhost:1527/testdb;create=true
> No current connection
> -- 
> --Set connection to connection A
> -- 
> ij> set connection connA;
> -- 
> --Try a sql
> -- 
> ij> select * from t;
> ERROR 58009: A network protocol error was encountered and the connection has 
> been terminated: the requested command encountered an unarchitected and 
> implementation-specific condition for which there was no architected message
> ij>
> In embedded the ''shutdown=true'  closes all active connections to the 
> database.
> ij(CONNB)> connect 'jdbc:derby:testdb;shutdown=true';
> ERROR 08006: Database 'testdb' shutdown.
> ij(CONNB)> disconnect;
> --
> -- Shows no current connections after a shutdown
> -- 
> ij> show connections;
> No current connection
> ij> set connection connA;
> IJ ERROR: No connection exists with the name CONNA
> ij> select * from t;
> IJ ERROR: Unable to establish connection
> ij>
> Furthermore a related issue  DERBY-1737 -  need to check for existing 
> connections before shutdown is marked as an improvement.

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira

Reply via email to