DSN1LOGP output

One intended use of this utility is to aid in determining and correcting system problems. When diagnosing Db2 problems, you might need to refer to licensed documentation to interpret output from this utility.

Reviewing DSN1LOGP output

With the SUMMARY option, you can produce a summary report, a detail report, or both. You can also use the CHECK(DATA) option to produce a summary and detail report of page regression errors.

For data sharing, you might see multiple log records with the same LRSN value on a single Db2 data sharing member.

Description of the summary report

The following summary report contains a summary of completed events, consisting of an entry for each completed unit of work. Each entry shows, among other information, the start time, user, and all page sets that were modified. When possible, the report shows whether an object is LOGGED or NOT LOGGED.

The summary report is divided into two distinct sections:

  • The first section is headed by the following message:
    DSN1150I SUMMARY OF COMPLETED EVENTS
  • The second section is headed by the following message:
    DSN1157I RESTART SUMMARY

The first section lists all completed units of recovery (URs) and checkpoints within the range of the log that is scanned. Events are listed chronologically, with URs listed according to when they were completed and checkpoints listed according to when the end of the checkpoint was processed. The page sets that are changed by each completed UR are listed. If a log record that is associated with a UR is unavailable, the attribute INFO=PARTIAL is displayed for the UR. Otherwise, the UR is marked INFO=COMPLETE. A log record that is associated with a UR is unavailable if the range of the scanned log is not large enough to contain all records for a given UR.

The DISP attribute can be one of the following values: COMMITTED, ABORTED, INFLIGHT, IN-COMMIT, IN-ABORT, POSTPONED ABORT, or INDOUBT. The DISP attributes COMMITTED and ABORTED are used in the first section; the remaining attributes are used in the second section.

The list in the second section shows the work that is required of Db2 at restart as it is recorded in the log that you specified. If the log is available, the checkpoint that is to be used is identified, as is each outstanding UR, together with the page sets it changed. Each page set with pending writes is also identified, as is the earliest log record that is required to complete those writes. If a log record that is associated with a UR is unavailable, the attribute INFO=PARTIAL is displayed, and the identification of modified page sets is incomplete for that UR.

DSN1212I DSN1LGRD FIRST LOG LRSN ENCOUNTERED 00CA21F57927B1D48000                     
                                                                                      
================================================================================      
DSN1150I SUMMARY OF COMPLETED EVENTS                                                  
                                                                                      
DSN1151I DSN1LPRT MEMBER=DB2A     UR  CONNID=DB2A      CORRID=021.OPNLGR00  AUTHID=SYSOPR    PLAN=SYSTEM
             START DATE=00.161 TIME=11:27:30  DISP=COMMITTED           INFO=COMPLETE  
             STARTRBA=0000000000002BB36475   ENDRBA=0000000000002BB37024              
             STARTLRSN=00CA21F57945B9AE2000  ENDLRSN=00CA21F57953A83EC000             
             NID=* LUWID=DSNCAT.SYEC1DB2.CA21F5792E8A.0001                            
             COORDINATOR=* PARTICIPANTS=*                                             
             DATA MODIFIED:                                                           
                  DATABASE=0001=DSNDB01   PAGE SET=00CF=SYSLGRNX                      
                  DATABASE=0001=DSNDB01   PAGE SET=0087=DSNLLX01                      
                  DATABASE=0001=DSNDB01   PAGE SET=0086=DSNLLX02  

DSN1151I DSN1LPRT MEMBER=DB2A     UR  CONNID=DB2A      CORRID=021.OPNLGR00  AUTHID=SYSOPR    PLAN=SYSTEM
             START DATE=00.161 TIME=11:27:30  DISP=COMMITTED           INFO=COMPLETE  
             STARTRBA=0000000000002BB374EF   ENDRBA=0000000000002BB37C81              
             STARTLRSN=00CA21F57956411DE000  ENDLRSN=00CA21F5795841E68000             
             NID=* LUWID=DSNCAT.SYEC1DB2.CA21F5795571.0001                            
             COORDINATOR=* PARTICIPANTS=*                                             
             DATA MODIFIED:                                                           
                  DATABASE=0001=DSNDB01   PAGE SET=00CF=SYSLGRNX                      
                  DATABASE=0001=DSNDB01   PAGE SET=0087=DSNLLX01                      
                  DATABASE=0001=DSNDB01   PAGE SET=0086=DSNLLX02                      

....
DSN1213I DSN1LGRD LAST LOG  RBA ENCOUNTERED 0000000000002BBC97A6

DSN1213I DSN1LGRD LAST LOG LRSN ENCOUNTERED 00CA21F5849F250A8000

DSN1224I SPECIFIED LOG LRSNEND 00CA21F586A6D2000000 COULD NOT BE LOCATED FOR MEMBER DB2A  

DSN1214I NUMBER OF LOG RECORDS READ 0000000000002571 

================================================================================
DSN1157I RESTART SUMMARY
 
DSN1153I DSN1LSIT CHECKPOINT  MEMBER=DB2A                                    
               STARTRBA=0000000000002BBB8CAC  ENDRBA=0000000000002BBC59E8    
               STARTLRSN=00CA21F58479D042C000  ENDLRSN=00CA21F58480E67E4000  
               DATE=12.250  TIME=14:20:29                                    
                                                                             
DSN1162I DSN1LPRT  MEMBER=DB2A     UR  CONNID=BATCH     CORRID=ARCHIVE       AUTHID=SYSADM    PLAN=ARCHIVE
             START DATE=00.161 TIME=11:27:30  DISP=INFLIGHT            INFO=COMPLETE 
             STARTRBA=0000000000002BBC888E  STARTLRSN=00CA21F5849D6B88E000  NID=*    
              LUWID=DSNCAT.SYEC1DB2.CA21F58084CF.0003  COORDINATOR=*                 
              PARTICIPANTS=*                                                         
             DATA MODIFIED:                                                          
                  DATABASE=0119=JACKDB    PAGE SET=0002=JACKTS                       
                  DATABASE=0119=JACKDB    PAGE SET=0005=TESTIX                       

DSN1160I DATABASE WRITES PENDING:                                                    
                  DATABASE=0001=DSNDB01    PAGE SET=0008=DSNDB01X   START=0000000000002BB8BC60
                  DATABASE=0001=DSNDB01    PAGE SET=001F=DBD01      START=0000000000002BB8BED8
                  DATABASE=0006=DSNDB06    PAGE SET=006C=DSNADX01   START=0000000000002BB8EE55
                  DATABASE=0006=DSNDB06    PAGE SET=0787=DSNADH02   START=0000000000002BB8E858
                  DATABASE=0006=DSNDB06    PAGE SET=0076=DSNUCX01   
....

Description of the detail report

The following detail report includes the following records:

  • Redo and undo log records
  • System events log records, including begin and end checkpoint records, begin current status rebuild records, and begin forward and backward recovery records
  • Page set control log records, including open and close page set log records, open and close data set log records, set write, reset write, and page set write log records
  • UR control log records for the complete or incomplete unit of recovery

You can reduce the volume of the detail log records by specifying one or more of the optional keywords in the DSN1LOGP utility control statement.

00000000000023C9EAF6  MEMBER(DB2A    )  TYPE( DBE TABLE CHECKPOINT - DBGC READ)
              LRSN(00C9C1231139FA000000)  DBID(002B)  OBID(0000)     
              SUBTYPE(DBE TABLE WITH EXCEPTION DATA) 

     *LRH* 007A007A 4100001D 0E800000 00000000 000023C9 EA7C0826 000023C9 EA7CC9C1 
           231139FA 0001 
      0000 00000054 03100000 00000000 00000000 00000000 00000000 00000000 0EC7C4C2 
      0020 C5E3002B 00000000 00000000 00000000 C7000000 00C9B6DE A8263200 00000000 
      0040 00000000 00000000 00000000 002B0000 00C80000 

     HASH RECORD - CHAIN:   43,        LRSN: 00C9B6DEA82632000000 

00000000000023C9EB70 MEMBER(DB2A     ) TYPE( DBE TABLE CHECKPOINT - DBGC READ) 
              LRSN(00C9C1231139FB000000) DBID(002C) OBID(0000)       
              SUBTYPE(DBE TABLE WITH EXCEPTION DATA) 
     *LRH* 007A007A 4100001D 0E800000 00000000 000023C9 EAF60826 000023C9 EAF6C9C1 
           231139FB 0001 
      0000 00000054 03100000 00000000 00000000 00000000 00000000 00000000 0EC7C4C2 
      0020 C5E3002C 00000000 00000000 00000000 C7000000 00C9B6DE A8268A00 00000000 
      0040 00000000 00000000 00000000 002C0000 00C80000 

     HASH RECORD - CHAIN: 44,          LRSN: 00C9B6DEA8268A000000 
0000000000023C9EBEA MEMBER(DB2A      ) TYPE( DBE TABLE CHECKPOINT - DBGC READ) 
              LRSN(00C9C1231139FC000000) DBID(002D) OBID(0000)       
              SUBTYPE(DBE TABLE WITH EXCEPTION DATA) 
     *LRH* 007A007A 4100001D 0E800000 00000000 000023C9 EB700826 000023C9 EB70C9C1 
           231139FC 0001 
      0000 00000054 03100000 00000000 00000000 00000000 00000000 00000000 0EC7C4C2 
      0020 C5E3002D 00000000 00000000 00000000 C7000000 00C9B6DE A826BC00 00000000 
      
      0040 00000000 00000000 00000000 002D0000 00C80000

Description of data propagation information in the summary report

The following sample output shows information from the DSN1LOGP summary report about log records of changes to Db2 tables that were defined with DATA CAPTURE CHANGES.

The fields show the following information:

  • START RBA and END RBA show the first and last RBAs that are captured for the unit of recovery that was not retrieved. The range that the start and end RBA encompass can include one or all of the SQL statements within the scope of the unit of recovery.
  • TABLE LIST OVERFLOW indicates whether more than 10 distinct data capture table IDs were updated by this unit of recovery. This example indicates that no overflow occurred.
  • LR WRITTEN shows the number of written log records that represented changes to tables that were defined for data capture and were available to the DB2CDCEX routine. Recursive SQL changes from DB2CDCEX and changes from other attachments that are not associated with DB2CDCEX are not included. If you receive a value of 2147483647, an overflow occurred and the count is not valid.
  • LR RETRIEVED is the number of captured RBAs that were retrieved by DB2CDCEX. If you receive a value of 2147483647, an overflow occurred and the count is not valid.
  • LR NOT RETRIEVED is the difference between the number of written log records (LR WRITTEN) and the number of retrieved log records (LR RETRIEVED). The following example output shows that four log records were written, and none were retrieved.
DATA PROPAGATION INFORMATION:
     START RBA=000004A107F4       END RBA=000004A10A5C           TABLE LIST OVERFLOW=NO
     LR WRITTEN=0000000000000004  LR RETRIEVED=0000000000000000  LR NOT RETRIEVED=0000000000000004
     DATABASE=0112=DBCS1701       PAGESET=0002=TSCS1701          TABLE OBID=0005

Description of the report on page regression errors

DSN1LOGP reports page regression errors when you specify the CHECK(DATA) option. The value of the SUMMARY option determines whether the utility creates a detail report, a summary report, or both.

A detail report contains the following information for each page regression error:

  • DBID
  • OBID
  • Page number
  • Current LRSN or RBA
  • Member name
  • Previous level
  • Previous update
  • Date
  • Time

A summary report contains the total number of page regressions that the utility found as well as the following information for each table space in which it found page regression errors:

  • Database name
  • Table space name
  • DBID
  • OBID

If no page regression errors are found, DSN1LOGP outputs a single message that no page regression errors were found.

The sample output in the following figure shows the detail report when page regression errors are found.

Page regression detected:                                        
DBID(0001) OBID(001F) PAGE(00000003)                             
Current LRSN                           = C93AA29FC3D1            
Previous level from current log record = C93AA290845E            
Previous update to data page found on log = C93AA29FC3D0         
                                                                 
Page regression detected:                                        
DBID(0001) OBID(001F) PAGE(00000002)                             
Current LRSN                           = C93AA2E1EDEA            
Previous level from current log record = C93AA2D380F7            
Previous update to data page found on log = C93AA2E1EDE9         
                                                                 
Page regression detected:                                        
DBID(0001) OBID(001F) PAGE(00000002)                             
Current LRSN                           = C93BBD7CD15E            
Previous level from current log record = C93BBD7CCA7C            
Previous update to data page found on log = C93BBD7CD15B    

Command text in DSN1LOGP output

Command text is logged automatically. When you run DSN1LOGP with TYPE(0010), the output includes records for commands. Command record output has TYPE(SYSTEM EVENT) and SUBTYPE(TRACE RECORD). The data is in the form of an IFCID 0090 trace record. For example, the following output from DSN1LOGP shows a -STOP DB2 command:

00006BFBE999  LRSN(C6CD403EB3AF)  TYPE(SYSTEM EVENT)                     
              SUBTYPE(TRACE RECORD)                                      
                                                                         
*LRH* 01400034 00100041 10800000 00000000 00000000 00000726 00000000 00000000 0000C6CD  *                              F
      403EB3AF 0000                                                                     *                    
0000  011A0000 00000028 00F20001 00000014 00130001 000B60E2 E3D6D740 E3D6D740 C4C2F216  *         2            -STOP DB2
0020  81AB2000 00000040 00560117 005A02A1 16180930 C4E2D5C1 C6CD403E C6CD403E B392DDEE  *a            !      DSNAF    k
0040  00000006 00000006 00000000 E2E3D3C5 C3F14040 40404040 40404040 40404040 C4E2D5C1  *            STLEC1          DSNA
0060  40404040 E2E8C5C3 F1C4C2F2 C6CD403E B3770001 00000000 0000F3F0 0000F3F0 F9F0009C  *    SYEC1DB2F             3090
0080  0200E2E8 E2D6D7D9 4040F0F2 F34BC7C3 E2C3D5F6 F0F2E5C1 F1C14040 F1C14040 40404040  *  SYSOPR  023.GCSCN602VA1A
00A0  40404040 4040E2E8 E2D6D7D9 40400000 00000000 00000000 00000000 00000000 00000000  *      SYSOPR        
00C0  00000000 00000000 00004040 40404040 40404040 40404040 40404040 40404040 40404040  *                    
00E0  40404040 40404040 40404040 40404040 40404040 40404040 40404040 40404040 40404040  *                    
0100  40404040 40404040 40404040 00000000 00000000 00000000 0000

Interpreting error codes

When an error occurs, DSN1LOGP formats a reason code from the Db2 stand-alone log service in the SYSPRINT output.

DSN1LOGP can abnormally terminate with a user abend code of X'099'. DSN1LOGP finds the corresponding abend reason code in register 15 (at the time of error). If the specified RBA or LRSN range was not found in the input data sets DSN1LOGP will terminate with return code 4.