
Snapshot Distributed Transaction Processing: The XA+ Specification Version 2 SNAP S H O T [This page intentionally left blank] Snapshot Distributed Transaction Processing: The XA+ Specification Version 2 The Open Group June 1994, The Open Group All rights reserved. No part of this publication may be reproduced, stored in a retrieval system, or transmitted, in any form or by any means, electronic, mechanical, photocopying, recording or otherwise, without the prior permission of the copyright owners. Snapshot Distributed Transaction Processing: The XA+ Specification Version 2 ISBN: 1-85912-046-6 Document Number: S423 Published in the U.K. by The Open Group, June 1994. Any comments relating to the material contained in this document may be submitted to: The Open Group Apex Plaza Forbury Road Reading Berkshire, RG1 1AX United Kingdom or by Electronic Mail to: [email protected] ii Snapshot (1994) Contents Chapter 1 Introduction............................................................................................... 1 1.1 X/Open DTP Model................................................................................... 1 1.2 XA Interface ................................................................................................. 2 Chapter 2 Model and Definitions........................................................................ 3 2.1 X/Open DTP Model................................................................................... 3 2.1.1 Functional Components ......................................................................... 4 2.1.2 Interfaces between Functional Components...................................... 5 2.2 Definitions .................................................................................................... 7 2.2.1 Transaction................................................................................................ 7 2.2.2 Transaction Properties ............................................................................ 7 2.2.3 Distributed Transaction Processing ..................................................... 7 2.2.4 Global Transactions................................................................................. 8 2.2.5 Transaction Branches .............................................................................. 8 2.2.6 Data Interfaces.......................................................................................... 8 2.2.7 Thread of Control .................................................................................... 9 2.2.8 Tightly- and Loosely-coupled Threads............................................... 9 2.3 Transaction Completion and Recovery.................................................. 10 2.3.1 Rolling Back the Global Transaction.................................................... 10 2.3.2 Protocol Optimisations........................................................................... 10 2.3.3 Heuristic Branch Completion................................................................ 11 2.3.4 Failures and Recovery............................................................................. 11 Chapter 3 Interface Overview................................................................................ 13 3.1 Index to Services in the XA and XA+ Interfaces .................................. 14 3.2 Opening and Closing Resource Managers ............................................ 16 3.3 Association of Threads with Transaction Branches............................. 17 3.3.1 Transaction Context ................................................................................ 19 3.3.2 Registration of Resource Managers ..................................................... 19 3.4 Branch Creation........................................................................................... 20 3.4.1 Transaction Manager Managed Transaction Branches .................... 20 3.4.2 Communication Resource Manager Managed Transaction Branches..................................................................................................... 20 3.5 Branch Completion..................................................................................... 22 3.5.1 Transaction Chaining.............................................................................. 23 3.5.2 Communication Resource Manager Managed Transaction Branches..................................................................................................... 23 3.5.3 Transaction Commitment and Rollback in Subordinates ............... 23 3.6 Synchronous, Non-blocking and Asynchronous Modes.................... 24 3.6.1 Synchronous ............................................................................................. 24 3.6.2 Non-blocking............................................................................................ 24 3.6.3 Asynchronous........................................................................................... 24 Distributed Transaction Processing: The XA+ Specification Version 2 iii Contents 3.7 Failure Recovery ......................................................................................... 25 3.8 Shutdown Processing................................................................................. 25 Chapter 4 The <xa.h> Header ................................................................................ 27 4.1 Naming Conventions................................................................................. 27 4.2 Transaction Identification ......................................................................... 28 4.3 XA Options................................................................................................... 29 4.4 Resource Manager Switch......................................................................... 29 4.5 Transaction Manager Switch .................................................................... 31 4.6 Flag Definitions ........................................................................................... 33 4.7 Maximum Values........................................................................................ 34 4.8 Return Codes ............................................................................................... 34 Chapter 5 Reference Manual Pages.................................................................... 39 ax_add_branch( ).............................................................................................. 40 ax_commit( ) ..................................................................................................... 41 ax_done( ).......................................................................................................... 44 ax_end( )............................................................................................................ 46 ax_forget_branch( ) .......................................................................................... 49 ax_get_branch_info ( ) ...................................................................................... 50 ax_prepare( ) ..................................................................................................... 51 ax_ready( ) ........................................................................................................ 53 ax_recover( )...................................................................................................... 55 ax_reg( ) ............................................................................................................ 57 ax_rollback ( ) .................................................................................................... 60 ax_set_branch_info( )....................................................................................... 63 ax_start( ).......................................................................................................... 65 ax_unreg( )........................................................................................................ 68 xa_close( ).......................................................................................................... 69 xa_commit( ) ..................................................................................................... 71 xa_complete( )................................................................................................... 75 xa_done( ).......................................................................................................... 77 xa_end( )............................................................................................................ 79 xa_forget( )........................................................................................................ 82 xa_open( ).......................................................................................................... 84 xa_prepare( ) ..................................................................................................... 86 xa_ready( ) ........................................................................................................ 89 xa_recover( )...................................................................................................... 91 xa_rollback ( ) .................................................................................................... 93 xa_start( ).......................................................................................................... 96 xa_wait( ) .......................................................................................................... 100 xa_wait_recovery( ).........................................................................................
Details
-
File Typepdf
-
Upload Time-
-
Content LanguagesEnglish
-
Upload UserAnonymous/Not logged-in
-
File Pages168 Page
-
File Size-