Max ADSO link Level Abend Diagnosis

Document ID : KB000015073
Last Modified Date : 14/02/2018
Show Technical Document Details
Question:

Whenever a DC174001 APPLICATION ABORTED. ATTEMPTING TO EXCEED MAXIMUM LINK LEVEL occurs, is it possible to identify the dialogs and link path involved?

Answer:

Yes, Modify message DC174001 by changing the severity to 3. Ensure that task snap is enabled.

In the snap you could do a find on string OTB*, You will find strings such as OTB*OTX*VDB*, 

UMBROTB*, OTB*ADSCXCTL. Ignore these. You are looking for a dialog name after the OTB* eyecatch. For example:

03DD88C80 3B6E0400 00000300 D6E3C25C D9C2C2C4 D3C7F1F2 40404040 40404040 E2E8E2C4 *.>......OTB*RBBDLG12 SYSD* 

3DD88CA0 C9D9D340 3DD7B808 40D28000 00062688 3DD83108 3DD83108 0002CDB0 00000000 *IRL .P.. K.....h.Q...Q..........* 

3DD88CC0 00000000 00000000 00000000 00000000 000A000C 00040000 00030000 000003D0 *...............................}* 

3DD88CE0 0002C1C4 E2F24040 40402000 80004000 40404040 40404040 40404040 40404040 *..ADS2 .... . * 

3DD88D00 40404040 40404040 40404040 40404040 40404040 40404040 40404040 40404040 * * 

CONTENTS THROUGH 3DD88E1F SAME AS ABOVE LINE. 

3DD88E20 40404040 40404040 40404040 40404040 D9C2C2C4 D3C7F1F1 D3C9D5D2 00000000 * RBBDLG11LINK....* 

                                             ^ 03DD88C88+1A8

This OTB identifies the last dialog in the link path. Offset 1A8 and 1B0 show the previous dialog (RBBDLG11) and how it got to RBBDLG12. In this case via a LINK: 

0001A8 OTBDCOM DS CL8' ' PREV DIALOG TO HAVE CONTROL 

0001B0 OTBCNTL DS CL4' ' CTRL COMMAND ISSUED BY PREV DIALOG. 

Note that the OTB above starts at 03DD88C88, plus offset x'1A8" points to RBBDLG11LINK.

 

Now find the VDB* for RBBDLG11. These are the fields from the VDB*: 

Here is the part of the VDB DSECT that relates to this process:

000000 VDB      DSECT 06/28/90 

000000 VDBID    DS CL4 "VDB*". 

000004 VDBDNAM  DS CL8 DIALOG NAME 

00000C VDBPREVA DS A PREVIOUS VDB ADDRESS 

000010 VDBNEXTA DS A NEXT VDB ADDRESS 

Ignore all the VDB*'s that are obviously not followed by a dialog. You can now walk the VDB chain back to the first dialog. You will know when you get to the first dialog because offset X'C' will be 00000000. Note the dialogs along the way to get the sequence. 

Backwards from RBBDLG11: 

All the VDB's start at offset 8 from the addresses on the right, the bold section, the address of the previous VDB address is underlined and italicized.

Address

3DD7B800 3B6E0840 00000200 E5C4C25C D9C2C2C4 D3C7F1F1 3DD79808 00000000 3DD7B8F0 *.>. ....VDB*RBBDLG11. 

                  The previous VDB address is 3DD79808. 

3DD79800 3B6DDFA0 00000200 E5C4C25C D9C2C2C4 D3C7F1F0 3DD7B608 3DD7B808 3DD798F0 *._......VDB*RBBDLG10. 

                  The previous VDB address now is 3DD7B608. 

3DD7B600 3B6E0840 00000200 E5C4C25C D9C2C2C4 D3C7F940 3DD79608 3DD79808 3DD7B6F0 *.>. ....VDB*RBBDLG9 

                  The previous VDB address now is 3DD79608. 

3DD79600 3B6DDFA0 00000200 E5C4C25C D9C2C2C4 D3C7F840 3DD7B408 3DD7B608 3DD796F0 *._......VDB*RBBDLG8 

                  The previous VDB address now is 3DD7B408 

3DD7B400 3B6E0840 00000200 E5C4C25C D9C2C2C4 D3C7F740 3DD79408 3DD79608 3DD7B4F0 *.>. ....VDB*RBBDLG7 

                  The previous VDB address now is 3DD79408 

3DD79400 3B6DDFA0 00000200 E5C4C25C D9C2C2C4 D3C7F640 3DD7B208 3DD7B408 3DD794F0 *._......VDB*RBBDLG6 

                  The previous VDB address now is 3DD7B208 

3DD7B200 3B6E0840 00000200 E5C4C25C D9C2C2C4 D3C7F540 3DD79208 3DD79408 3DD7B2F0 *.>. ....VDB*RBBDLG5 

                  The previous VDB address now is 3DD79208 

3DD79200 3B6DDFA0 00000200 E5C4C25C D9C2C2C4 D3C7F440 3DD7B008 3DD7B208 3DD792F0 *._......VDB*RBBDLG4 

                  The previous VDB address now is 3DD7B008 

03DD7B000 3B6E0840 00000200 E5C4C25C D9C2C2C4 D3C7F340 3DD79008 3DD79208 3DD7B0F0 *.>. ....VDB*RBBDLG3 

                   The previous VDB address now is 3DD79008 

03DD79000 3B6DDFA0 00000200 E5C4C25C D9C2C2C4 D3C7F240 3DD83408 3DD7B008 3DD790F0 *._......VDB*RBBDLG2 

                   The previous VDB address now is 3DD83408 

3DD83400 3B6DFDC0 00000200 E5C4C25C D9C2C2C4 D3C7F140 00000000 3DD79008 3DD834F0 *._.{....VDB*RBBDLG1 

                   The previous VDB address now is 00000000 so the first dialog is RBBDLG1.