What is difference between oracle.jdbc.xa.client.OracleXADataSource and oracle.jdbc.pool.OracleDataSource

user369823 picture user369823 · Aug 23, 2012 · Viewed 18.8k times · Source

I am trying to understand the difference between XA vs Non XA JDBC datasource. Also how do I know which type and version of JDBC dtriver is used. I am currently on 10.3 weblogic and trying some tet to kill long running queries using setQueryTimeout, which isnt seem to be reliable with OracleXADataSource as it is only working the first time and not always. Sorry for this basic question but I am new to Weblogic Datasource configuration

Thanks

Answer

Timo Hahn picture Timo Hahn · Aug 23, 2012

XA jdbc drivers are used to implement two-phase commit, meaning the two remote resources are part of the same transaction. Java specifies an implementation of this via JTA. A good reading is e.g. http://www.javaworld.com/javaworld/jw-07-2000/jw-0714-transaction.html; if you google for 'xa jdbc driver' you'll find plenty more info.

You should not use the XA driver if not necessary. I remember reading that there are some problems with them.