New Format for Logical Unit of Work Identifier
ID: Q175375
|
The information in this article applies to:
-
Microsoft SNA Server, versions 3.0, 3.0 SP1, 3.0 SP2, 3.0 SP3, 3.0 SP4, 4.0, 4.0 SP1, 4.0 SP2
SUMMARY
SNA Server versions 3.0 through 4.0 SP2 have a new Logical Unit of Work Identifier
(LUW_ID) instance format for LU 6.2-based conversations. Outlined below are
the changes that have been made:
SNA Server 3.0 |
Previous Versions |
Byte 1- Year (high) |
Byte 1- Hundredths of a second |
Byte 2- Year (low) |
Byte 2- Seconds |
Byte 3- Month |
Byte 3- Minute |
Byte 4- Day |
Byte 4- Hour |
Byte 5- Hour |
Byte 5- Day |
Byte 6- Minute |
Byte 6- Month |
SNA Server 4.0 Post-SP2 |
Byte 1- Year (high) |
Byte 2- Year (low)
|
Byte 3-6- Flipped hexidecimal unsigned long integer containing the number of hundredths of a second in this year (but assuming each month is 31 days). The maximum value of (12/31 23.59.59.99) is 3214079999 or 0xBF92F7FF. If this value clashes with a previously generated value, the number is incremented by one.
|
NOTE: The algorithm is changed in SNA Server 4.0 post-SP2 to prevent possible clashes in the logical unit of work generated by an SNA Server.
MORE INFORMATION
The LUW_ID is used to identify conversations that are part of a single
Syncpoint transaction. All conversations with the same LUW_ID are committed
(or backed out) at the same time. SNA Server 3.0 (not 2.11) assigns two
LUW_IDs to a transaction program (TP) when the TP is started. In the case
of locally started TPs, this is when the TP_STARTED verb is issued. The
first LUW_ID is the TP's protected LUW_ID and is used by SNA Server as the
LUW_ID for all synclevel Syncpoint conversations allocated by the TP. When
the TP issues an (MC_)Allocate verb with synclevel Syncpoint, SNA Server
generates an Attach containing the TP's current protected LUW_ID.
The second LUW_ID is the TP's unprotected LUW_ID. It is used on all
conversations allocated by the TP with a synclevel other than Syncpoint.
For remotely initiated TPs, the incoming Attach may contain an LUW_ID for
the TP; it is mandatory if the conversation is synclevel Syncpoint. For
synclevel Syncpoint conversations, SNA Server saves the LUW_ID as the TP's
protected LUW_ID and generates a new unprotected LUW_ID for it. For
conversations other than Syncpoint, SNA Server saves the LUW_ID as the TP's
unprotected LUW_ID and generates a new protected LUW_ID.
SNA Server generates LUW_IDs by concatenating:
- The fully qualified name of the local LU, preceded by a single byte
indicating its length.
- A 6-byte LUW instance number, generated from the current date and time
(see above summary).
- A 2-byte LUW sequence number, initialized to 1.
There are times when certain non-Syncpoint-related TPs (host or SNA Server
based) make use of the unprotected LUW_ID for accounting purposes and
extract this field using the GET_TP_PROPERTIES verb. These applications may
become confused if they are not aware of the changes that have been made to
the LUW_ID instance field.
NOTE: COM Transaction Integrator for IMS and CICS (also known as "Cedar")
is one application that commonly uses Syncpoint for 2-phased commit.
Additional query words:
Keywords : prodsna snaappc snacpic snaprog sna3 sna3sp1 sna3sp2 sna3sp3 sna3sp4 sna4 sna4sp1 sna4sp2
Version : WINDOWS:3.0,3.0 SP1,3.0 SP2,3.0 SP3,3.0 SP4,4.0,4.0 SP1,4.0 SP2
Platform : WINDOWS
Issue type : kbinfo
|