cdc:nos2.source:opl871:btask
Table of Contents
BTASK
Table Of Contents
- [00010] RECOVER *BTRAN* USERS.
- [00091] RECOVER *BTRAN* USERS.
Source Code
- BTASK.txt
- IDENT BTASK
- ENTRY BTASK
- LCC OVERLAY(BTASK,0,0)
- SST BEGN,CMBL
- SYSCOM B1
- BTASK TITLE BTASK - RECOVER *BTRAN* USERS.
- *COMMENT BTASK - RECOVER *BTRAN* USERS.
- COMMENT COPYRIGHT CONTROL DATA SYSTEMS INC. 1992.
- BTASK SPACE 4,10
- *** BTASK - RECOVER *BTRAN* USERS.
- *
- * E. D. REDIG. 80/10/06.
- BTASK SPACE 4,25
- *** *BTASK* RECOVERS RERUNNABLE *BTRAN* TRANSACTIONS AND
- * MUST BE INSTALLED ON THE TAF SYSTEM LIBRARY.
- *
- * *BTASK* READS THE ENTIRE *CRF* BY ISSUING *TSTAT* REQUESTS
- * TO OBTAIN INFORMATION ABOUT EACH USER AND PROCESSES THIS
- * INFORMATION AS FOLLOWS.
- *
- * 1. IF THE TRANSACTION TYPE IS NOT A *BTRAN* USER, THEN
- * READ THE NEXT *CRF* ENTRY.
- *
- * 2. IF THE TRANSACTION STEP IS NOT RECOVERABLE, THEN
- * READ THE NEXT *CRF* ENTRY.
- *
- * 3. MOVE THE *OLDID*, *NEWID*, USERNAME, AND *BTRAN* USER
- * CASE TO THE COMMUNICATION BLOCK.
- *
- * 4. ISSUE A *CALLRTN* TO *CTASK* TO RERUN
- * THE TRANSACTION AND READ THE NEXT *CRF* ENTRY.
- BTASK SPACE 4,20
- *** DAYFILE MESSAGES ISSUED.
- *
- * ABNORMAL COMPLETION.
- *
- * * BTASK - TAF AUTOMATIC RECOVERY NOT INSTALLED.*
- * KEYWORD SPECIFIED IN A *TSTAT* REQUEST REQUIRES
- * *TAF* AUTOMATIC RECOVERY.
- *
- * * BTASK - TASK LOGICAL ERROR.*
- * A LOGICAL ERROR OCCURRED THAT WAS NOT EXPECTED.
- *
- * * BTASK - USER NOT DEFINED IN NETWORK FILE.*
- * THE USER IS NOT DEFINED IN THE NETWORK FILE
- * ON A *TSTAT* REQUEST.
- *
- * * BTASK - XXXXXXX TRANSACTION NOT RERUNNABLE NOW.*
- * THIS OCCURS WHEN AN I/O ERROR IS DETECTED AND THE
- * DATA CANNOT BE RECOVERED FOR THE USER XXXXXXX.
- BTASK SPACE 4,10
- *** COMMON DECKS.
- *CALL COMCMAC
- *CALL COMKTAF
- *CALL COMKFLD
- *CALL COMKIPR
- *CALL COMKMAC
- * SAVE ORIGIN COUNTER TO REMOVE COMMON DECK STORAGE
- * IN *COMKCBD*, *COMKTSC*.
- BEGN BSS 0 SAVE ORIGIN COUNTER
- *CALL COMKCBD
- LIST X
- *CALL COMKTRF
- LIST -X
- *CALL COMKTSC
- ORG BEGN RESTORE ORIGIN COUNTER
- BTASK SPACE 4,15
- *** COMMUNICATION BLOCK HEADER WORDS AND MESSAGES.
- *
- *T TMSW 60/ CASE
- *T, TMSW+1 60/ RECOVERY FLAG (RF)
- *T, TMSW+2 60/ OLDID
- *T, TMSW+3 60/ NEWID
- *T, TMSW+4 60/ USERNAME
- *
- * CASE = 2 RECOVER *BTRAN* USER.
- * RF IF BIT 59 = 1, *CRM* AUTOMATIC RECOVERY IS USED.
- * IF BIT 0 = 1, *TAF* AUTOMATIC RECOVERY IS USED.
- * OLDID = PREVIOUS *CRM* IDENTIFIER.
- * NEWID = CURRENT *CRM* IDENTIFIER.
- * USERNAME = ONE-TO-SEVEN CHARACTER USERNAME LEFT-JUSTIFIED
- * WITH BLANK FILL.
- BSS CMBL RESERVE SPACE FOR COMMUNICATION BLOCK
- BTASK SPACE 4,25
- ** BTASK - RECOVER *BTRAN* USERS.
- *
- * ENTRY BOI OF *CRF*.
- *
- * EXIT RERUNNABLE *BTRAN* TRANSACTIONS RECOVERED.
- * TO *CTASK* TO RERUN TRANSACTIONS AND RETURN.
- * (TMSW) = RECOVER *BTRAN* USER CASE.
- * (TMSW+1) = RECOVERY FLAG.
- * (TMSW+2) = OLDID.
- * (TMSW+3) = NEWID.
- * (TMSW+4) = USERNAME.
- *
- * ERROR TO *BTA4* IF ERROR ENCOUNTERED.
- *
- * USES X - 1, 2, 3, 5, 6, 7.
- * A - 1, 2, 6, 7.
- * B - 1, 2, 3, 5.
- *
- * CALLS SNM.
- *
- * MACROS CALLRTN, CEASE, SCALL.
- BTASK SB1 1 ENTRY
- SA2 TNAM
- SX5 BTAC DAYFILE MESSAGE
- SA1 BTAW
- LX2 59-CBSYS
- BX6 X1
- SB3 BTACL MESSAGE LENGTH
- PL X2,BTA4 IF NOT SYSTEM ORIGIN TRANSACTION
- SA6 BTAN INITIALIZE *NEXT* FOR *TSTAT*
- * ISSUE *TSTAT* REQUEST TO OBTAIN STATUS OF TRANSACTION.
- BTA1 SCALL TSTAT,(BTAL,BTAM,BTAN,BTAO,BTAP,BTAQ,BTAR,BTAS,BTAT,BTA
- ,U,BTAV)
- SA1 BTAL GET STATUS OF REQUEST
- SX5 BTAB DAYFILE MESSAGE
- SX2 X1-TSRU
- SB3 BTABL MESSAGE LENGTH
- ZR X2,BTA4 IF RECOVERY UNAVAILABLE
- SX2 X1-TSEN
- ZR X2,BTA5 IF END OF *NEXT* PROCESSING
- SX5 BTAD DAYFILE MESSAGE
- SX2 X1-TSUU
- SB3 BTADL MESSAGE LENGTH
- ZR X2,BTA4 IF USER UNKNOWN
- SX5 BTAC DAYFILE MESSAGE
- SX2 X1-TSNE
- SB3 BTACL MESSAGE LENGTH
- NZ X2,BTA4 IF ERRORS IN *TSTAT*
- SA1 BTAR GET TRANSACTION TYPE
- SX2 X1-TYBT
- NZ X2,BTA1 IF NOT *BTRAN* USER
- SA1 BTAP GET TRANSACTION STEP
- SX2 X1-CSCD
- ZR X2,BTA3 IF *CDCS2* DOWN
- SX2 X1-CSTN
- NZ X2,BTA2 IF NOT TRANSACTION NO LONGER RERUNNABLE
- * THIS OCCURS WHEN AN I/O ERROR IS DETECTED AND THE
- * DATA CANNOT BE RECOVERED FOR THE USER.
- SB2 1RX
- SA1 BTAN GET RECOVERY UNIT NAME
- SB3 BTAX MESSAGE ASSEMBLY AREA
- SB5 -BTAE
- RJ SNM SET NAME IN MESSAGE
- SB3 BTAEL MESSAGE LENGTH
- SA2 BTAX
- SCALL TMSG,(A2,B3) SEND MESSAGE TO DAYFILE
- EQ BTA1 GET NEXT *BTRAN* USER
- BTA2 PL X2,BTA3 IF STEP IS TO BE RECOVERED
- EQ BTA1 GET NEXT *BTRAN* USER
- * ISSUE A *CALLRTN* TO *CTASK* TO RERUN THE TRANSACTION
- * AND READ THE NEXT *CRF* ENTRY.
- BTA3 SX6 TYBT SET *BTRAN* USER CASE
- SA1 BTAT GET *OLDID*
- SA2 BTAV GET *NEWID*
- SA6 TMSW STORE CASE IN COMMUNICATION BLOCK
- BX6 X1
- BX7 X2
- SA6 TMSW+2 STORE *OLDID* IN COMMUNICATION BLOCK
- SA7 TMSW+3 STORE *NEWID* IN COMMUNICATION BLOCK
- SA1 BTAN GET USERNAME
- BX7 X1
- SA7 A7+B1 STORE USERNAME IN COMMUNICATION BLOCK
- CALLRTN BTAA CALL *CTASK* TO RERUN TRANSACTION
- EQ BTA1 GET NEXT *BTRAN* USER
- BTA4 SCALL TMSG,(X5,B3) SEND MESSAGE TO DAYFILE
- CEASE 2 ABNORMAL CEASE WITH DUMP
- BTA5 CEASE EXIT TASK WITH CEASE
- * *CALLRTN* TASK LIST.
- BTAA DATA 5LCTASK CALL TO *CTASK*
- CON 0
- * DAYFILE MESSAGES.
- BTAB DATA C* BTASK - TAF AUTOMATIC RECOVERY NOT INSTALLED.*
- BTABL CON **10-BTAB*10
- BTAC DATA C* BTASK - TASK LOGICAL ERROR.*
- BTACL CON **10-BTAC*10
- BTAD DATA C* BTASK - USER NOT DEFINED IN NETWORK FILE.*
- BTADL CON **10-BTAD*10
- BTAE DATA C* BTASK - XXXXXXX TRANSACTION NOT RERUNNABLE NOW.*
- BTAEL CON **10-BTAE*10
- * *TSTAT* REQUEST PARAMETERS.
- BTAL CON 0 STATUS OF *TSTAT* REQUEST
- BTAM DATA 4HNEXT
- BTAN CON 0 NEXT USER FROM *TRF*
- BTAO DATA 4HSTEP
- BTAP CON 0 TRANSACTION STEP
- BTAQ DATA 4HTRAN
- BTAR CON 0 TRANSACTION TYPE
- BTAS DATA 5HOLDID
- BTAT CON 0 PREVIOUS *CRM* IDENTIFIER
- BTAU DATA 5HNEWID
- BTAV CON 0 CURRENT *CRM* IDENTIFIER
- BTAW DATA 1H BLANK WORD
- BTAX BSSZ 7 DAYFILE MESSAGE ASSEMBLY AREA
- BTASK SPACE 4,10
- ** COMMON DECKS.
- *CALL COMCSNM
- END BTASK
cdc/nos2.source/opl871/btask.txt ยท Last modified: 2023/08/05 17:24 by Site Administrator