IBM Support

MustGather: General Database Issues

Troubleshooting


Problem

This document describes the necessary information that needs to be collected to aid in quicker resolution of general IBM i database issues.

Resolving The Problem


For general database issues (that don't have an obvious Db2 functional category) this document includes the recommended data collection for debug. This is by no means all inclusive; however, it is meant as a starting point for document collection.

If you encounter a general database issue, collect the following information using either method A or method B as it is related to the issue:
Method A - QMGTOOLS
Data collection:

1. ADDLIBLE QMGTOOLS

2. GO MG
3. Option 13 - Check IBM for updated QMGTOOLS

4. Option 6 - Database menu

5. Option 1 - General database
image-20241022114522-1

6. Set the following parameters:

    Failing Job name - The fully qualified job that encountered the problem.

    File name and Library - The file and library name that is reporting errors.

    Journal name and Library - If the file is journaled set to journal name and library that journals the known file reporting errors.
    Date of error / Time of error - DSPJOB OPTION(*DFNA) and page down once for values to use for  Date format, Date separator, Time separator..

7. Press enter

8. Put in full Case number and specify FTP option.

    Anonymous is not longer allowed (GDPR) -  Supported FTP options (Search for FTP type)

    NOTE: if *NO is used for FTP then you must manually send data to IBM via MustGather: Instructions for Sending Data to IBM i Support 


Trace Collection (perform if you are able to recreate the error):

1. Issue CHGJOB JOB(NUMBER/USER/JOBNAME) LOG(4 00 *SECLVL) LOGCLPGM(*YES)

    NOTE: Replace JOB(NUMBER/USER/JOBNAME) with the job that will recreate the issue

2. ADDLIBLE QMGTOOLS

3. GO MG
4. Option 13 - Check IBM for updated QMGTOOLS

5. Option 6 - Database menu

6. Option 17 - Start DB collection
STRDBCOL

7. Set Job to same job used for step 1 (special value * can be used if the current interactive job recreates the issue).
    Set DBMON to *NO,
    Job trace to *YES,
    Comm Trace to *NO

8. Press Enter to set Case information.

9. Put in full Case number and specify FTP option.

    Use *STDFTP for standard FTP / *BDFTP for BlueDiamond Customers / *NO to not FTP.
NOTE: if *NO is used for FTP then you must manually send data to IBM via MustGather: Instructions for Sending Data to IBM i Support 
10. Re-create the error

11. When error has been re-created issue GO MG

12. Take option 6 - Database menu

13. Take option 18 - End DB collection to collect and send data to IBM.
QMGTOOLS_IFS
Method B - Manual Collection

PTF information:

1. Version, release, and modification level of system (for example, IBM i 7.3, IBM i 7.4, and so on).

2. Issue WRKPTFGRP and press Enter; then, press F6 to print a spooled file.

3. Issue DSPPTF OUTPUT(*PRINT)

4. PTF levels of the From and To program if an error message is involved:

o Look at the job log to locate the From and To program (example below).
o Issue DSPOBJD OBJ(QSYS/FromPGM) OBJTYPE(*PGM or *SRVPGM) DETAIL(*SERVICE) OUTPUT(*PRINT)
o Issue DSPOBJD OBJ(QSYS/ToPGM) OBJTYPE(*PGM or *SRVPGM) DETAIL(*SERVICE) OUTPUT(*PRINT)

Note: Change the FromPGM and ToPGM to the programs listed in the job log. Use WRKOBJ on the program to determine whether OBJTYPE is *PGM or *SRVPGM.
If there is no library listed or program starts with #, skip that one.

Example:
CPD4342 - 40 02/25/10 18:30:53,112435 QQQVALID QSYS *STMT QSQRUN1 QSYS *STMT

The program QQQVALID is the FromPGM.
The program QSQRUN1 is the ToPGM.

DSPOBJD OBJ(QSYS/QQQVALID) OBJTYPE(*PGM) DETAIL(*SERVICE) OUTPUT(*PRINT)
DSPOBJD OBJ(QSYS/QSQRUN1) OBJTYPE(*SRVPGM) DETAIL(*SERVICE) OUTPUT(*PRINT)


Send in Spool files generated by step 2 and 3 (this is not sent by MGTOOLS).

Data collection:

1. DSPFD FILE(LIBRARY/FILE) OUTPUT(*PRINT)

NOTE: Replace LIBRARY/FILE with the library and file name encountering a problem.

2 DSPFFD FILE(LIBRARY/FILE) OUTPUT(*PRINT)

NOTE: Replace LIBRARY/FILE with the library and file name encountering a problem.

3. DSPDBR FILE(LIBRARY/FILE) OUTPUT(*PRINT)

NOTE: Replace LIBRARY/FILE with the library and file name encountering a problem.

4. VLOGs:

A. Issue the STRSST command.
B. Select Option 1. Start a service tool.
C. Select Option 5. Licensed Internal Code log.
D. Select Option 2. Dump entries to printer from the Licensed Internal Code log.
E. Select Dump Option 1 1=Header
F. Press Enter.
G. Select Dump option 3 3=Header and entire entry
H. Specify the date and time of 10 minutes before and 10 minutes after the problem occurred.
I. Press Enter.
J. Press F12 to exit.
K. Select Option 7. Display the status of the Licensed Internal Code log.
L. Refresh until Dump requests not complete is zero.
M. Press F3 three times, and exit out-of-service tool.  Check QSYSOPR for messages.

5. Send in any Systems dump generated by the failing job.

6. Send in Journal information if file is journaled that includes the time period of when the error was encountered. To determine whether a file is journaled, Issue
DSPFD FILE(LIBRARY/FILE) and look for the "File is Currently Journaled" Parameter. If it is journaled, do the following:

A. Issue CRTLIB QIBMDATA
B. Issue DSPJRN JRN(LIBRARY/JOURNAL) RCVRNG(JRNRCV_LIBRARY/JRNRCV) FROMTIME('29.02.08' '18:30') INCHIDENT(*YES) OUTPUT(*OUTFILE)
OUTFILE(QIBMDATA/DSPJRNOUT)

NOTE: Replace JRN(LIBRARY/JOURNAL) with Journal library and journal.
Replace RCVRNG(JRNRCV_LIBRARY/JRNRCV) with Journal Receiver library and journal receiver name
Replace FROMTIME('29.02.08' '18:30' with time 1 hour before issue was seen.

C. Issue CRTSAVF QIBMDATA/PMRSAVE
D. Issue SAVOBJ OBJ(DSPJRNOUT) LIB(QIBMDATA) DEV(*SAVF) SAVF(QIBMDATA/PMRSAVE)

Trace Collection (perform if you are able to recreate the error):

1. Issue CHGJOB JOB(NUMBER/USER/JOBNAME) LOG(4 00 *SECLVL) LOGCLPGM(*YES).

NOTE: Replace JOB(NUMBER/USER/JOBNAME) that recreates the issue

2. Issue STRTRC SSNID(TRACE1) JOB(NUMBER/USER/JOBNAME) MAXSTG(4000000)

NOTE: Replace JOB(NUMBER/USER/JOBNAME) that recreates the issue
NOTE: Set the MAXSTG as large as you can.

3. Re-create the issue

4. Issue ENDTRC SSNID(TRACE1) DTALIB(QIBMDATA) PRTTRC(*YES)

5. Issue DSPJOBLOG JOB(NUMBER/USER/JOBNAME) OUTPUT(*PRINT)

NOTE: Replace JOB(NUMBER/USER/JOBNAME) that recreates the issue

6. Send in any Systems dump generated by the failing job.

Re-creates:

Re-creates consist of all the necessary objects to re-create the problem on an IBM system. This includes file network, programs, or SQL statements and instructions for re-creating the error. All objects can be saved by using SAVOBJ or SAVLIB commands.


** All spool files and save file generated from above steps needs to be sent to IBM. **
 
Direction for transferring files to IBM if QMGTOOLS was NOT used

 

[{"Type":"SW","Line of Business":{"code":"LOB68","label":"Power HW"},"Business Unit":{"code":"BU070","label":"IBM Infrastructure"},"Product":{"code":"SWG60","label":"IBM i"},"ARM Category":[{"code":"a8m0z0000000CHbAAM","label":"IBM i Db2-\u003EMustGather Database"}],"ARM Case Number":"","Platform":[{"code":"PF012","label":"IBM i"}],"Version":"All Version(s)"}]

Historical Number

N1012158

Document Information

Modified date:
22 October 2024

UID

nas8N1012158