|
In this scenario, a user on system 3 wants to change a name in
the database, causing the following events to occur:
- Member 3 checks the user states in the table to determine which
member is PRIMARY.
- Member 3 determines that member 1 is the PRIMARY member.
- Member 3 creates a work element, places the work element on its
own work queue, and issues IXCMSGOX to send the work element to the
PRIMARY member (member 1).
IXCMSGOX MEMTOKEN=MEM3TKN,MSGBUF=RECORD1,MSGLEN=LENMSG X
MSGCNTL=REQUPD,TARGET=MEM1TKN,RETCODE=RETURN, X
RSNCODE=REASON,MF=(E,MSGOLSTD)
- The message user routine for member 1 gets control. The routine
checks the message control information and determines that this is
a request to update the database.
- Member 1's message user routine creates a work element to prepare
to receive the message.
- Member 1's message user routine issues IXCMSGIX to read in the
message.
IXCMSGIX MSGTOKEN=TOKENMSG,MSGBUF=(R3),RETCODE=RETURN, X
RSNCODE=REASON,MF=(E,MSGILSTD)
- Member 1's message user routine places the work element on the
DBMGR's work queue, and posts the DBMGR.
- When the DBMGR is done with the work, it issues IXCMSGOX to the
requesting member stating that the work is completed, deletes the
request from DBMGR's work queue, and updates member 1's status field.
IXCMSGOX MEMTOKEN=MEM1TKN,MSGBUF=RECORD1,MSGLEN=LENMSG X
MSGCNTL=GOODRC,TARGET=MEM3TKN,RETCODE=RETURN, X
RSNCODE=REASON,MF=(E,MSGOLSTD)
- When member 3's message user routine gets control, the routine
determines that the message control information contains GOODRC, indicating
a successful update.
- Member 3 returns the results of the operation to the caller.
- Member 3 deletes that request from its work queue, and updates
member 3's status field.
|