db-derby-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Kathey Marsden <kmarsdende...@sbcglobal.net>
Subject Re: Proposal to change Derby's public api for XADataSource and ConnectionPoolDataSource
Date Mon, 15 May 2006 22:07:19 GMT
Rick Hillegas wrote:

> Dear Derby users,
>
> 0Please read this message if you work on an application server or in 
> an application layer which cares about distributed transactions and/or 
> pooled connections.
>
> Right now the inheritance graph for Derby's DataSources does not 
> mirror the corresponding graph of interfaces in javax.sql. Derby's 
> DataSources are classes which you will find in Derby's published 
> javadoc for the package org.apache.derby.jdbc. In particular, Derby's 
> XADataSources and ConnectionPoolDataSources implement the DataSource 
> interface. This is so even though the javax.sql.XADataSource and 
> javax.sql.ConnectionPoolDataSource interfaces themselves do not extend 
> javax.sql.DataSource.
>
> We believe this is confusing, particularly to developers who are 
> trying to build applications which easily port across different 
> vendors' JDBC implementations. We propose to rework the hierarchy of 
> classes in org.apache.derby.jdbc so that our XADataSources and 
> ConnectionPoolDataSources no longer implement javax.sql.DataSource. We 
> propose to expose this change in Derby 10.2.
>
> However, we do not want to make this change if it will break existing 
> applications. Please let us know if you think this will break your app 
> server or other Derby-powered application.
>
I got this feedback from someone supporting an app server.

<quote>
I think its a risky change if you ask me.  You don't know if users  
already depend on such behavior.  Also, not sure i understand the 
statement "We believe this is confusing, particularly to developers who 
are trying to build applications which easily port across different 
vendors' JDBC implementations."  Can you explain more?  BTW, Oracle does 
implement the javax.sql.DataSource, so you are not hte only one.  DB2 
doesn't though.

We  depend on having your PooledDS be instance of 
ConnnectionPoolDataSource and your XADS be instance of  
javax.sql.XADataSource and nothing else. 

Saying that however, i don't know what our  stack products are doing 
with the Derby DataSources specially if they have special Derby logic, 
so my statement is only for our base.
</quote>


Kathey




Mime
View raw message