Snapshot Distributed Transaction Processing: the XA+ Specification

Snapshot Distributed Transaction Processing: the XA+ Specification

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( ).........................................................................................

View Full Text

Details

  • File Type
    pdf
  • Upload Time
    -
  • Content Languages
    English
  • Upload User
    Anonymous/Not logged-in
  • File Pages
    168 Page
  • File Size
    -

Download

Channel Download Status
Express Download Enable

Copyright

We respect the copyrights and intellectual property rights of all users. All uploaded documents are either original works of the uploader or authorized works of the rightful owners.

  • Not to be reproduced or distributed without explicit permission.
  • Not used for commercial purposes outside of approved use cases.
  • Not used to infringe on the rights of the original creators.
  • If you believe any content infringes your copyright, please contact us immediately.

Support

For help with questions, suggestions, or problems, please contact us