[ http://issues.apache.org/jira/browse/DERBY-1036?page=all ]
     
Knut Anders Hatlen resolved DERBY-1036:
---------------------------------------

    Fix Version: 10.2.0.0
     Resolution: Fixed

Dag's patch for DERBY-1183 and this issue committed into trunk with revision 
416661.

> Embedded and client differ with regard to Statement.setCursor Name. client 
> will disallow duplicate cursor names.  Embedded will allow it.
> -----------------------------------------------------------------------------------------------------------------------------------------
>
>          Key: DERBY-1036
>          URL: http://issues.apache.org/jira/browse/DERBY-1036
>      Project: Derby
>         Type: Sub-task

>   Components: Network Client, JDBC
>     Versions: 10.1.3.0, 10.1.2.3, 10.2.0.0
>     Reporter: Kathey Marsden
>     Assignee: Dag H. Wanvik
>     Priority: Minor
>      Fix For: 10.2.0.0

>
> In looking at the checkDataSource test for DERBY-435, I hit an issue that the 
> test fails with an exception  for duplicate cursor name because it sets the 
> cursor name for  two statements to the same thing.
> Embedded seems to allow this, but it seems to me that client might be right 
> here.  How could embedded differentiate the two for positioned updates?    
> There is risk to existing applications if  embedded is changed to throw the 
> error that should be considered if we decide we need to change the embedded 
> behaviour.
> Below are some details from checkDataSource where I hit this. I will change 
> the  names for now as it does not seem relevant to what is being tested.
> PreparedStatement psruState = createFloatStatementForStateChecking(cs1, 
> "select i from ru where i = ?");
>         CallableStatement csruState = createFloatCallForStateChecking(cs1, 
> "CALL SYSCS_UTIL.SYSCS_SET_DATABASE_PROPERTY(?,?)");
> Both of these methods set the cursor name to the same thing:
> s.setCursorName("StokeNewington");
> For embedded it succeeds for client it throws the exception.
> java.sql.SQLException: Duplicate cursor names are not allowed.
>       at org.apache.derby.client.am.SqlException.getSQLException(Unknown 
> Source)
>       at org.apache.derby.client.am.Statement.setCursorName(Unknown Source)
>       at 
> org.apache.derbyTesting.functionTests.tests.jdbcapi.checkDataSource.createFloatStatementForStateChecking(Unknown
>  Source)
>       at 
> org.apache.derbyTesting.functionTests.tests.jdbcapi.checkDataSource.runTest(Unknown
>  Source)
>       at 
> org.apache.derbyTesting.functionTests.tests.jdbcapi.checkDataSource.main(Unknown
>  Source)

-- 
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

Reply via email to