首页 > 解决方案 > 在 websphere 分布式事务中使用 teradata 数据源

问题描述

我想在 websphere 9.0 的全局事务中使用 teradata 数据源以及 oracle XA 数据源。我想弄清楚如何将 teradata 设置为 XA 数据源,是否有类似于 oracleConnectionpooldatasource 与 oracleXAdatasource 的特定实现类?我们是否有用于 TeraConnectionPoolDataSource 的等效 XA 数据源实现?我们可以设置连接池属性吗?

谢谢

标签: javawebspheredatasourceteradataxa

解决方案


Teradata JDBC Driver Reference仅记录TeraConnectionPoolDataSource (实现 javax.sql.ConnectionPoolDataSource)和 TeraDataSource(实现 javax.sql.DataSource)。这让我相信他们没有提供 javax.sql.XADataSource 的实现。

也就是说,在 WebSphere Application Server 中,有可能以某些折衷为代价,让一个不实现 javax.sql.XADataSource 的数据源与两阶段提交能力资源一起参与全局事务(例如Oracle XADataSource)。为此,您必须愿意接受这样的可能性:如果在两阶段资源完成准备阶段之后发生中断或其他中断,此时单阶段资源(在本例中为 TeraData)被告知提交/roll back,则事务管理器将不知道一阶段资源的结果,并且在XA恢复期间将无法自动确定结果,因此事务的解决将需要人工干预。此功能通常称为“最后参与者支持”


推荐阅读