在Websphere分布式事务中使用Teradata数据源

问题描述 投票:0回答:1

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

谢谢

java websphere datasource teradata xa
1个回答
0
投票

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

就是说,在WebSphere Application Server中,有可能要付出一定的代价,而要实现一个未实现javax.sql.XADataSource的数据源,并与具有两阶段提交功能的资源一起参与全局事务(例如Oracle XADataSource)。为此,您必须愿意接受这样的可能性:如果在告知单阶段资源(在这种情况下为TeraData)提交两阶段资源后,在两阶段资源完成了准备阶段之后发生了中断或其他中断/回滚,那么事务管理器将不知道单阶段资源的结果,并且将无法在XA恢复期间自动确定结果,因此事务的解决将需要人工干预。此功能通常称为“最后参与者支持”(由于在所有两阶段资源都完成了准备阶段之后将一阶段资源放置为最后资源),也称为“接受启发式危害”(由于此响应中前面所述的情况(不确定的结果)。

© www.soinside.com 2019 - 2024. All rights reserved.