This week's book giveaway is in the Design forum.
We're giving away four copies of Design for the Mind and have Victor S. Yocco on-line!
See this thread for details.
Win a copy of Design for the Mind this week in the Design forum!
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic

Getting 2 phase commit exception with SQL server and DB2 datasources....

 
Nisha Durga
Greenhorn
Posts: 2
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Hi, I am using 2 datasources. one for SQL server(XA datasource)and another for DB2(not an XA).

In the particular transaction, our code gets nearly 3 connections using getConnection of XA datasource and 2 connections using DB2 datasource. Getting the following exception when the transaction is about to commit: "An illegal attempt to commit a one phase capable resource with existing two phase capable resources has occurred." Is it required to close all connections before committing?

Could you pls help me out of this problem soon??? Thanks in advance.
 
Ulf Dittmer
Rancher
Posts: 42967
73
  • Mark post as helpful
  • send pies
  • Quote
  • Report post to moderator
Welcome to JavaRanch.

What does "nearly 3 connections" mean? 2? 3? Why does the code get more than one connection per datasource inside of a single transaction?

Is it required to close all connections before committing?

If a connection is closed, all pending transactions are rolled back - probably not what you want.

It sounds as if the code is trying to use an XA transaction with a non-XA capable datasource. Can the code get an XA-capable connection for DB2 as well?
 
  • Post Reply
  • Bookmark Topic Watch Topic
  • New Topic