We would certainly be very interested in testing XA support. Our project is called BlackTie - it's an XATMI implementation. We use the JBossTS transaction manager for the transaction engine - although JBossTS is written in Java, providing XA support was reasonably easy since it conforms to the OTS specification which means we can control transactions from a C based XA environment.

There is an example of using different resource managers within transactions:
https://svn.jboss.org/repos/blacktie/trunk/atmibroker-xatmi/src/example/txfooapp
The files ora.c and db2.c show user code accessing resources from two different vendors - the XA specific information is defined in btconfig.xml (basically it just exposes the XA open string, the symbol name of the xa switch structure and the name of the library that exports the switch symbol).

On 21.04.2011 20:04, Michael Musgrove wrote:
I am referring to the X/Open specification Distributed Transaction
Processing: The XA Specification
(pubs.opengroup.org/onlinepubs/009680699/toc.pdf). If postgresql
provides a conforming Resource Manager switch then we can include
postgresql work along with interactions with other Resource Managers
(Oracle, DB2) in the same transaction. For example the equivalent
support in Oracle that I am asking for is documented at
http://download.oracle.com/docs/cd/B10501_01/appdev.920/a96590/adga1_xa.htm

When I wrote the patch for the backend support, I was not able to find any open source implementations of X/Open XA-compatible resource managers or transaction managers, which makes it kind of hard to implement the API correctly. There was plenty of JDBC XA implementations, however, so I used that for testing.

If you can find something to test it with, it probably wouldn't be that hard to write the library.



--
Sent via pgsql-bugs mailing list (pgsql-bugs@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-bugs

Reply via email to