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] Updated: (DERBY-1254) XAConnection uses NetConnection as underlying physical connection for JDBC4/Java 1.6
Date Thu, 27 Apr 2006 16:37:38 GMT
     [ http://issues.apache.org/jira/browse/DERBY-1254?page=all ]

V.Narayanan updated DERBY-1254:
-------------------------------

    Attachment: DERBY_1254.diff
                DERBY_1254.stat

The getNetXAConnection method overriden in NetXAConnection40 has a different signature from
the superclass method which was causing the problem.

ClientPooledConnection
----------------------------------
getNetXAConnection accepts ClientBaseDataSource as parameter.

ClientXAConnection40
-------------------------------
getNetXAConnection accepts ClientDataSource as parameter.

This was causing the netXAPhysicalConnection_ variable to be initialized with NetXAConnection
instead of NetXAConnection40 in the ClientPooledConnection class constructor. 

Fixing the signature of overridden method getNetXAConnection in ClientXAConnection40 would
have fixed this problem. 

However, the NetXAConnection40 does nothing but have a overriden implementation of getNetConnection
for returning NetConnection40. Instead if we used the ClientJDBCObjectFactory.getNetConnection
method to return the appropriate NetConnection object based on jdk version in NetXAConnection.getNetConnection
 we could have done away with NetXAConnection40.This has been done in this patch.

Please find attached the .diff and the .stat files for this patch.

thanx
Narayanan


> XAConnection uses NetConnection as underlying physical connection for JDBC4/Java 1.6
> ------------------------------------------------------------------------------------
>
>          Key: DERBY-1254
>          URL: http://issues.apache.org/jira/browse/DERBY-1254
>      Project: Derby
>         Type: Bug

>   Components: JDBC
>     Versions: 10.2.0.0
>  Environment: DerbyNetClient
>     Reporter: Kristian Waagan
>     Assignee: V.Narayanan
>  Attachments: DERBY_1254.diff, DERBY_1254.stat
>
> When running under DerbyNetClient (using Derby network server) using Java 1.6, XAConnection.getConnection()
returns a NetConnection instance instead of NetConnection40 instance for the underlying "physical
connection". This causes AbstractMethod errors for calls in LogicalConnection40 (not yet committed).
PooledConnection does the correct thing according to the test that revealed this problem.
> The XAConnection was obtained by using TestUtil.getXADataSource().getXAConnection().
The underlying connection object was then obtained with XAConnection.getConnection().
> A new ConnectionTest is on the way as part of DERBY-1180. It will be submitted/committed,
but not enabled until this bug is fixed.

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


Mime
View raw message