hp Reliable Transaction Router
C Application Programmer's
Reference Manual


Begin Index

Contents (summary)
Preface Preface
Chapter 1 Introduction
Chapter 2 Overview of the C Programming API
Chapter 3 RTR Call Reference
Chapter 4 Compiling and Linking Your Application
Appendix A RTR C API Sample Applications
Appendix B RTR Application Development Tutorial
  Index
  Figures
  Examples
  Tables


Contents


Preface
Preface Preface
Chapter 1
1 Introduction
     1.1     RTR Application Programming Interface
     1.2     C Programming and RTR APIs
         1.2.1         Compatibility Between RTR Versions
         1.2.2         Reasons for a C Programming API
         1.2.3         Benefits of the C Programming API
         1.2.4         Comparison of OpenVMS and C Programming API Calls
Chapter 2
2 Overview of the C Programming API
     2.1     Transactional Messages
     2.2     RTR Channels
     2.3     Broadcast Messages and Events
     2.4     C Programming API Calls
     2.5     Programming Examples
         2.5.1         Simple Client
         2.5.2         Simple Server
     2.6     Using the C Programming API
     2.7     Concurrency
     2.8     Exit Handlers in Applications
     2.9     Using the RTR Set Wakeup Routine
         2.9.1         Restrictions on the RTR Wakeup Handler
     2.10     API Optimizations
         2.10.1         Client Optimization
         2.10.2         Voting Optimization and Server Flags
             2.10.2.1             The RTR_F_OPE_EXPLICIT_PREPARE Flag
             2.10.2.2             The RTR_F_OPE_EXPLICIT_ACCEPT Flag
     2.11     RTR Messages
     2.12     RTR Events
         2.12.1         RTR Event Names and Numbers
         2.12.2         Developing Applications to Use Events
         2.12.3         Event Management by RTR
         2.12.4         Event Troubleshooting
     2.13     Use of XA Support
     2.14     RTR Applications in a Multiplatform Environment
         2.14.1         Defining a Message Format
             2.14.1.1             Data Types
             2.14.1.2             Alignment
     2.15     Application Design and Tuning Issues
         2.15.1         Transactions That Can Cause Server Failure
         2.15.2         Transaction Grouping and Database Applications
         2.15.3         Transaction Sequence and Shadow Servers
         2.15.4         Transaction Independence
Chapter 3
3 RTR Call Reference
     3.1     RTR Environmental Limits
     3.2     RTR Maximum Field Lengths
     3.3     RTR C API Calls
    Command 1     rtr_accept_tx
    Command 2     rtr_broadcast_event
    Command 3     rtr_close_channel
    Command 4     rtr_error_text
    Command 5     rtr_ext_broadcast_event
    Command 6     rtr_get_tid
    Command 7     rtr_get_user_context
    Command 8     rtr_open_channel
    Command 9     rtr_receive_message
    Command 10     rtr_reject_tx
    Command 11     rtr_reply_to_client
    Command 12     rtr_request_info
    Command 13     rtr_send_to_server
    Command 14     rtr_set_info
    Command 15     rtr_set_user_context
    Command 16     rtr_set_user_handle
    Command 17     rtr_set_wakeup
    Command 18     rtr_start_tx
Chapter 4
4 Compiling and Linking Your Application
     4.1     Compilers
     4.2     Linking Libraries
Appendix A
Appendix A RTR C API Sample Applications
     A.1     Overview
     A.2     Client Application
     A.3     Server Application
     A.4     Shared Code
     A.5     Header Code
Appendix B
Appendix B RTR Application Development Tutorial
Index
Index
Examples
2-1 Example Client
2-2 Example Server
2-3 Type rtr_status_data_t
2-4 User Event Example
2-5 RTR and User Event Example
2-6 Broadcast Event Example
2-7 Frontend Gain and Loss Examples
2-8 Returned Event Key Range Data Example
2-9 Receive Message Example
3-1 Client Application
3-2 Server Application
3-3 Sample XA Server Application, Version 4.1 and Later
3-4 Sample XA Server Application Prior to Version 4.1
3-5 Use of Partition Names
3-6 RTR Message Status Block
Figures
1 RTR Reading Path
4-1 Compile Sequence
Tables
1 RTR Documents
2 Conventions
1-1 OpenVMS API (V2) and C Programming API (V3) Compared
2-1 C Programming API Calls
2-2 RTR Received Message Types for Server Applications
2-3 RTR Received Message Types for Client Applications
2-4 Contents of the User Buffer for Different Message Types
2-5 RTR Event Names and Numbers
2-6 Symbols for Event Lists
2-7 Event Notifications
2-8 Events that Return Key Range Data
2-9 Independent Transaction Flags
3-1 Environmental Limits
3-2 RTR Maximum Field-Length Definitions
3-3 Accept Transaction Flags
3-4 Get TID Flags
3-5 Format Identification and Data Content
3-6 Open Channel Flags (One Required)
3-7 Open Channel Client Flags
3-8 Open Channel Server Flags
3-9 Key Segment Data Type
3-10 Reply To Client Flag
3-11 Information Classes
3-12 Application Process ("prc") Strings
3-13 Client Process ("cli") Strings
3-14 Facility ("fac") Strings
3-15 Key Segment ("ksg") Strings
3-16 Node Links ("lnk") Strings
3-17 Node and ACP ("rtr") Strings
3-18 Partition on a Backend ("bpt") Strings
3-19 Partition on a Router ("rpt") Strings
3-20 Partition History ("hpt") Strings
3-21 Server Process ("srv") Strings
3-22 Transaction on a Backend ("btx") Strings
3-23 Transaction on a Frontend ("ftx") Strings
3-24 Transaction on a Router ("rtx") Strings
3-25 Send to Server Flags
3-26 Select Qualifiers for the Set Partition Object
3-27 Select Qualifiers for the Set Transaction Object
3-28 Valid Set Transaction State Changes
3-29 Qualifiers for Set Partition
3-30 Qualifiers for Set Transaction
4-1 Minimum Compiler Versions for Developing RTR Applications


Previous Next Index