Change Notes item #546958, was opened at 2002-04-22 04:47 You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=381174&aid=546958&group_id=22866
Category: JBossCX Group: v3.0 (Rabbit Hole) Status: Open Priority: 5 Submitted By: David Jencks (d_jencks) Assigned to: David Jencks (d_jencks) Summary: New local tx jca-jdbc wrapper Initial Comment: I've written a new jca wrapper for jdbc 1 drivers. It features connection association, automatic autocommit outside a managed transaction, and destroying connections on errors (SQLExceptions). Currently it does not have any statement pooling or prepared statement caching. In order for this to compile against both jdbc 2 and jdbc 3 (included in jdk1.4), I implemented sort of an ifdef system using ant filters. An unfortunate side effect of this at the moment is that the entire connector source tree is copied before being compiled. Assistance in changing this would be appreciated. -- Lack of connection association was causing exceptions with the new ConnectionManager implementations when a ejb held a connection over a call to another ejb. The ConnectionManager implementation attempts to release the connection during the call, which requires connection association support. Connection association support is required of all adapters by the jca spec. -- The jca spec requires of at least cci adapters that any work done outside of a managed (by the tx manager) transaction or an explicit local transaction be autocommitted. I haven't checked the jdbc spec for xa drivers, however this behavior seems reasonable. If you are using CMT, you don't need to worry about the autocommit setting. If you are using BMT, you can set autocommit either way as you prefer without interfering with CMT use of the same connections. -- The jca spec requires that ManagedConnections be destroyed on serious errors. Since there is no standard or consistency between databases on SQLExceptions, we are forced to treat all SQLExceptions as fatal to the ManagedConnection. However, we have an opportunity to write db-specific extensions that actually look at the sql exception and, in a db specific way, decide if the connection is dead (e.g. socket error) or recoverable (duplicate primary key). -- The old local wrapper had lots of statement caching/pooling code. This caused problems for some people at some times, and I think it may have been turned off. I would like to know if anyone has any evidence that such caching significantly improves performance on any real db. My own view at the moment is that such caching should be performed by the driver or database itself. Due to the problems with ejbs calling other ejbs with the current wrapper, that this one solves, I am considering merging this wrapper into the 3.0 branch. Opinions on this are welcome. ---------------------------------------------------------------------- You can respond by visiting: http://sourceforge.net/tracker/?func=detail&atid=381174&aid=546958&group_id=22866 _______________________________________________ Jboss-development mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/jboss-development