DOCUMENT:Q175375 13-JUN-2001 [sna] TITLE :New Format for Logical Unit of Work Identifier PRODUCT :Microsoft SNA Server PROD/VER:WINDOWS:3.0,3.0 SP1,3.0 SP2,3.0 SP3,3.0 SP4,4.0,4.0 SP1,4.0 SP2 OPER/SYS: KEYWORDS:kbsna300sp1 kbsna300sp2 kbsna300sp3 kbsna300sp4 sna4 kbsna400sp1 kbsna400sp2 ====================================================================== ------------------------------------------------------------------------------- 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 "COMTI") is one application that commonly uses Syncpoint for 2-phased commit. Additional query words: ====================================================================== Keywords : kbsna300sp1 kbsna300sp2 kbsna300sp3 kbsna300sp4 sna4 kbsna400sp1 kbsna400sp2 Technology : kbAudDeveloper kbSNAServSearch kbSNAServ300 kbSNAServ400 kbSNAServ300SP3 kbSNAServ300SP1 kbSNAServ400SP1 kbSNAServ400SP2 kbSNAServ300SP2 kbSNAServ300SP4 Version : WINDOWS:3.0,3.0 SP1,3.0 SP2,3.0 SP3,3.0 SP4,4.0,4.0 SP1,4.0 SP2 Issue type : kbinfo ============================================================================= THE INFORMATION PROVIDED IN THE MICROSOFT KNOWLEDGE BASE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND. MICROSOFT DISCLAIMS ALL WARRANTIES, EITHER EXPRESS OR IMPLIED, INCLUDING THE WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. IN NO EVENT SHALL MICROSOFT CORPORATION OR ITS SUPPLIERS BE LIABLE FOR ANY DAMAGES WHATSOEVER INCLUDING DIRECT, INDIRECT, INCIDENTAL, CONSEQUENTIAL, LOSS OF BUSINESS PROFITS OR SPECIAL DAMAGES, EVEN IF MICROSOFT CORPORATION OR ITS SUPPLIERS HAVE BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. SOME STATES DO NOT ALLOW THE EXCLUSION OR LIMITATION OF LIABILITY FOR CONSEQUENTIAL OR INCIDENTAL DAMAGES SO THE FOREGOING LIMITATION MAY NOT APPLY. Copyright Microsoft Corporation 2001.