XATMI

A free implementation of TX/XATMI

David Newall

17 May, 2007

DateChanges
17 May, 2007Initial web page
1 July, 2007Revise "What is this"

What is this?

This is a free implementation of a Tuxedo-like transaction monitor.  (You use it to write distributed client/server applications.)  It already provides all of the XATMI features that I used in a previous project, and it was the lack, in recent web-based work, of the simplicity and utility afforded by the XATMI model, that inspired this project.  Even though it's not yet complete, I think it's a good beginning on which additional features will grow.

Source Code

Quick Start: first, extract xatmi.tgz, cd xatmi, and then make.  Then: ./tpserver, reversesvr &, and then try a test program; reversetest and tuxtest both expect test-data on the command line.  A good name for a switchboard is /tmp/switchboard, and the service REVERSE is running.

xatmi/
xatmi.tgz
COPYRIGHT

Reading List

Reading material courtesy The Open Group.  Please also see their Standards Information Base.

Required Reading

Distributed TP: The TX (Transaction Demarcation) Specification

Distributed TP: The XATMI Specification

Further Reading

ACSE Presentation: Transaction Processing API (XAP-TP)

Distributed TP: The TxRPC Specification

Distributed TP: The XA Specification

Distributed TP: The XCPI-C Specification

Structured Transaction Definition Language (STDL)

Demonstration Server

There might be a tpserver running on davidnewall.com:12345, and there might be output from it.  If so, then please run reversesvr and reversetest against it from your machines.

server stdout

server stderr

reverse stdout

reverse stderr

Copyright

Copyright (c) 2007, DNA Pty Ltd and contributors.

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.

—end—