Contents
Chapter 1 Introduction.......................................................................... 1
Chapter 2 Model and Definitions................................................... 3
2.1 X/Open DTP Model................................................................. 3
2.1.1 Interfaces between Local TP Components.......................... 3
2.2 Definitions.................................................................................. 4
2.2.1 Transaction................................................................................. 4
2.2.2 Distributed Transaction Processing...................................... 4
2.2.3 Application Program................................................................ 4
2.2.4 Resource Manager.................................................................... 5
2.2.5 Global Transactions.................................................................. 5
2.2.6 Transaction Branches ............................................................... 5
2.2.7 Transaction Manager................................................................ 6
2.2.8 Thread of Control...................................................................... 6
2.2.9 Tightly- and Loosely-coupled Threads................................ 6
2.3 Transaction Completion and Recovery................................ 8
2.3.1 Rolling Back the Global Transaction..................................... 8
2.3.2 Protocol Optimisations............................................................ 8
2.3.3 Heuristic Branch Completion................................................. 9
2.3.4 Failures and Recovery.............................................................. 9
Chapter 3 Interface Overview........................................................... 11
3.1 Index to Services in the XA Interface.................................... 12
3.2 Opening and Closing Resource Managers.......................... 13
3.3 Association of Threads with Transaction Branches........... 14
3.3.1 Registration of Resource Managers ...................................... 15
3.4 Branch Completion................................................................... 17
3.5 Synchronous, Non-blocking and Asynchronous Modes.. 18
3.6 Failure Recovery ....................................................................... 18
Chapter 4 The "xa.h" Header.............................................................. 19
4.1 Naming Conventions............................................................... 19
4.2 Transaction Identification........................................................ 19
4.3 Resource Manager Switch....................................................... 21
4.4 Flag Definitions ......................................................................... 22
4.5 Return Codes ............................................................................. 23
Distributed Transaction Processing: The XA Specification iii