!*** MODULE $DDTMDEF *** !DEC$ OPTIONS/ALIGN=(RECORDS=PACKED,COMMONS=PACKED)/NOWARN ! ! Transaction Manager services structure definitions ! ! ** INTEGER*4 DDTM$X_TRANSACTION_ID(4) ! Transaction Id type ! ** INTEGER*4 DDTM$X_UTC_DATE_TIME(4) ! UTC type PARAMETER DDTM$S_TID = '00000010'X ! Size of a transaction id ! ! System services modifier flags ! PARAMETER DDTM$M_SYNC = '00000001'X PARAMETER DDTM$M_NONDEFAULT = '00000002'X PARAMETER DDTM$M_PROCESS = '00000004'X PARAMETER DDTM$M_VOLATILE = '00000008'X PARAMETER DDTM$M_RUNDOWN = '00000010'X PARAMETER DDTM$M_CANCEL = '00000020'X PARAMETER DDTM$M_FULL_STATE = '00000040'X PARAMETER DDTM$M_BRANCH_UNSYNCHED = '00000080'X PARAMETER DDTM$M_COORDINATOR = '00000100'X PARAMETER DDTM$M_NOWAIT = '00000200'X PARAMETER DDTM$M_FINAL_STATE = '00000400'X PARAMETER DDTM$M_LATE = '80000000'X STRUCTURE /DDTM$R_FLAGS/ PARAMETER DDTM$S_SYNC = 1 PARAMETER DDTM$V_SYNC = 0 ! Synchronous status requested PARAMETER DDTM$S_NONDEFAULT = 1 PARAMETER DDTM$V_NONDEFAULT = 1 ! Not the default transaction PARAMETER DDTM$S_PROCESS = 1 PARAMETER DDTM$V_PROCESS = 2 ! Process-permanent RM PARAMETER DDTM$S_VOLATILE = 1 PARAMETER DDTM$V_VOLATILE = 3 ! volatile-only state PARAMETER DDTM$S_RUNDOWN = 1 PARAMETER DDTM$V_RUNDOWN = 4 ! forget all RMs PARAMETER DDTM$S_CANCEL = 1 PARAMETER DDTM$V_CANCEL = 5 ! Cancel GET operation PARAMETER DDTM$S_FULL_STATE = 1 PARAMETER DDTM$V_FULL_STATE = 6 ! Full state information PARAMETER DDTM$S_BRANCH_UNSYNCHED = 1 PARAMETER DDTM$V_BRANCH_UNSYNCHED = 7 ! Don't need to sync branch PARAMETER DDTM$S_COORDINATOR = 1 PARAMETER DDTM$V_COORDINATOR = 8 ! Join Coordinating RM PARAMETER DDTM$S_NOWAIT = 1 PARAMETER DDTM$V_NOWAIT = 9 ! Don't wait for termination PARAMETER DDTM$S_FINAL_STATE = 1 PARAMETER DDTM$V_FINAL_STATE = 10 ! Get final transaction outcome PARAMETER DDTM$S_LATE = 1 PARAMETER DDTM$V_LATE = 31 BYTE %FILL (2) ! Phase one branch or join END STRUCTURE ! DDTM$R_FLAGS ! ! Resource manager event request options ! PARAMETER DDTM$M_EV_PREPARE = '00000001'X PARAMETER DDTM$M_EV_ABORT = '00000002'X PARAMETER DDTM$M_EV_COMMIT = '00000004'X PARAMETER DDTM$M_EV_DEFAULT_TRANS = '00000008'X PARAMETER DDTM$M_EV_TRANS_START = '00000010'X STRUCTURE /DDTM$R_EVENT_MASK/ PARAMETER DDTM$S_EV_PREPARE = 1 PARAMETER DDTM$V_EV_PREPARE = 0 ! Vote request required PARAMETER DDTM$S_EV_ABORT = 1 PARAMETER DDTM$V_EV_ABORT = 1 ! Abort notificiation PARAMETER DDTM$S_EV_COMMIT = 1 PARAMETER DDTM$V_EV_COMMIT = 2 ! Commit notificiation PARAMETER DDTM$S_EV_DEFAULT_TRANS = 1 PARAMETER DDTM$V_EV_DEFAULT_TRANS = 3 ! New default TID PARAMETER DDTM$S_EV_TRANS_START = 1 PARAMETER DDTM$V_EV_TRANS_START = 4 ! Request transaction start events BYTE %FILL (1) END STRUCTURE ! DDTM$R_EVENT_MASK ! ! $TRANS_EVENT system service event types ! PARAMETER DDTM$K_TX_PREPARE = '00000001'X ! Prepare transaction request PARAMETER DDTM$K_TX_COMMIT = '00000002'X ! Commit transaction order PARAMETER DDTM$K_TX_ABORT = '00000003'X ! Abort transaction order PARAMETER DDTM$K_TX_RECOVER_COMMIT = '00000004'X ! Commit order on recovery PARAMETER DDTM$K_TX_RECOVER_ABORT = '00000005'X ! Abort order on recovery ! ! Resource manager event report types ! PARAMETER DDTM$K_PREPARE = '00000001'X ! Prepare operation PARAMETER DDTM$K_COMMIT = '00000002'X ! Commit operation PARAMETER DDTM$K_ABORT = '00000003'X ! Abort operation PARAMETER DDTM$K_ONE_PHASE_COMMIT = '00000004'X ! One-phase commit PARAMETER DDTM$K_DEFAULT_CLEARED = '00000005'X ! Tid no longer default PARAMETER DDTM$K_DEFAULT_SET = '00000006'X ! Tid now process default PARAMETER DDTM$K_STARTED_DEFAULT = '00000007'X ! New process default transaction PARAMETER DDTM$K_STARTED_NONDEFAULT = '00000008'X ! New nondefault transaction PARAMETER DDTM$K_RECOVER_COMMITTED = '00000009'X ! Transaction committed PARAMETER DDTM$K_RECOVER_ERROR = '0000000A'X ! Error during recovery PARAMETER DDTM$K_RECOVER_INDOUBT = '0000000B'X ! Transaction is indoubt PARAMETER DDTM$K_RECOVER_RESOLVE = '0000000C'X ! RM resposible for resolution ! ! Transaction report structure (DECdtm V1.0) ! STRUCTURE /DDTM$R_ASTDEF/ ! Transaction event AST parameter INTEGER*4 DDTM$L_ARGLEN ! Structure length INTEGER*4 DDTM$A_TID ! Transaction id INTEGER*4 DDTM$L_PART_ID ! Participant identifier INTEGER*4 DDTM$L_RM_CTX ! RM event ASTPRM INTEGER*4 DDTM$L_OPTYPE ! Operation type INTEGER*4 DDTM$L_REASON ! Abort extended reason code INTEGER*4 DDTM$O_UTC_CMT_TIME(4) ! Reserved to Digital INTEGER*4 DDTM$O_UTC_LATEST(4) ! Reserved to Digital END STRUCTURE ! DDTM$R_ASTDEF ! ! Transaction report structure ! STRUCTURE /DDTM$R_REPORTDEF/ INTEGER*4 DDTM$L_REPORT_LEN ! Structure length INTEGER*4 DDTM$A_TID_PTR ! Transaction id INTEGER*4 DDTM$L_REPORT_ID ! Report identifier INTEGER*4 DDTM$L_RM_CONTEXT ! RM event ASTPRM INTEGER*4 DDTM$L_EVENT_TYPE ! Event report type INTEGER*4 DDTM$L_ABORT_REASON ! Abort extended reason code INTEGER*4 DDTM$O_COMMIT_TIME(4) ! Reserved to Digital INTEGER*4 DDTM$O_LATEST_TIME(4) ! Reserved to Digital INTEGER*4 DDTM$Q_TX_CLASS(2) ! Transaction class descriptor INTEGER*4 DDTM$Q_PART_NAME(2) ! RM Instance descriptor END STRUCTURE ! DDTM$R_REPORTDEF !DEC$ END OPTIONS