A fix is available
APAR status
Closed as program error.
Error description
An SQLCODE354 (SQL code +354) received during multi row fetch processing can indicate an error and an incomplete report. QMF must report to the user this SQL code was received during multi row fetch processing so that the user does not have an incorrect report and not be aware of it. * Also included in this APAR is a fix to tell users that an SQL code -805 was received for the QMF error reporting module DSQISDGN. DSQ14152
Local fix
Problem summary
**************************************************************** * USERS AFFECTED: All QMF for TSO/CICS V8.1 and V9.1 users. * **************************************************************** * PROBLEM DESCRIPTION: Users running multi-row fetch from QMF * * can experience incorrect output * * without being aware of the situation. * * Users missing database package DSQESDGN * * (V8.1) or DSQFSDGN(V9.1) can experience * * hangs, abends, drops from QMF and other * * unpredictable problems. * **************************************************************** * RECOMMENDATION: * **************************************************************** This APAR addresses 2 problems. The first problem can only be encountered by QMF V8.1 or V9.1 users running with the multi- row fetch feature turned on. This feature is turned on by setting the QMF startup parameter, MR or DSQSMRFI, to YES or Y. If QMF encounters an SQLcode +354 while performing multi-row fetch of database rows, there is a strong possibility that the report or data object will not be complete. The SQLcode +354 usually means there was a problem retrieving some of the rows and that all rows are not present. QMF currently does not externalize this situation to the end user. The end user will have no indication that the report does not contain all rows or that there was some kind of problem. If the end user were to run the same query or scenario with the multi-row fetch feature turned off, (MR or DSQSMRFI set to NO or N) the user would see the error message that the multi-row fetch scenario is covering up. For the next problem, when QMF V8.1 or V9.1 is missing its database package DSQESDGN (V810) or DSQFSDGN (V910), completely unpredictable results can occur (as described above). One of the functions of the DSQISDGN program is to do error reporting in a DB2 for z/OS V8.1 NFM database or higher. When the package for this program is missing and an SQL code -805 occurs for the DSQESDGN or DSQFSDGN package, QMF does not recover properly. It has been found in many of these cases where the DSQESDGN or DSQFSDGN package is missing it is due to the following scenario: 1. QMF V8.1 or V9.1 was installed into a DB2 V8.1 compatibility mode database. 2. The DB2 V8.1 compatibility mode DB was migrated to DB2 V8.1 NFM. 3. The migration jobs for QMF V8 or V9 were *not* run to allow QMF to run in the DB2 V8.1 NFM db. In the scenario above after step 2, users must run the jobs: DSQ1BSQL, DSQ1BVW and DSQ1BPKG found in QMFxxx.SDSQSAPE once a database is migrated from compatibility mode to NFM (even if the QMF mode is not changed). This is documented in the QMF Installing and Managing Guide.
Problem conclusion
For the MR fetch problem, QMF has been modified to detect an SQL code +354 during MR fetch processing and treat it as an error. QMF will issue new message MSGDSQ10492: 'Database fetch error occurred while processing your command.' The complete message text is as follows: Errors or warnings occurred when QMF attempted to fetch rows from the database to complete your command. Though these errors or warnings did not cause database activity to end abnormally, they might have prevented all rows associated with your command from being fetched from the database. For example, if you issued a command that displays a report, the report might not be displayed in its entirety. Your QMF administrator can diagnose this problem by accessing the DSQDEBUG data set and searching for SQLCODE +354 and its associated diagnostic information. This problem can occur when QMF is started with multi-row fetch turned on (MR=YES), so turning multi-row fetch off (MR=NO) might help in isolating and troubleshooting the problem. ***End of message text*** This situation can prevent QMF from starting up if errors are encountered during QMF startup processing. For the missing DSQESDGN/DSQFSDGN package problem, QMF will issue new messages MSGDSQ14152, MSGDSQ14153 or MSGDSQ14154 stating: 'Non end-user SQLCODE returned from DBM. SQLCA is as follows:' The SQL code returned in the message will be a SQL code -805 indicating the missing package. QMF users should run job QMFxxx.SDSQSAPE(DSQ1BPKG) to fix the problem. If it is suspected that the migration path above was not completed, the users should run all three jobs, DSQ1BSQL, DSQ1BVW and DSQ1BPKG.
Temporary fix
Comments
APAR Information
APAR number
PK54846
Reported component name
QMF-QUERY MGMT
Reported component ID
566872101
Reported release
810
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt
Submitted date
2007-10-16
Closed date
2007-11-16
Last modified date
2008-06-17
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
UK31342 UK31343
Modules/Macros
DSQCBRDI DSQCELTT DSQCEMSG DSQCRSNC DSQEFSQ8 DSQESDGN DSQFFSQ8 DSQFSDGN DSQIFSQ8 DSQIMSGM DSQISDGN DSQPNLE DXESQL DXYE2419
Fix information
Fixed component name
QMF-QUERY MGMT
Fixed component ID
566872101
Applicable component levels
Fix is available
Select the PTF appropriate for your component level. You will be required to sign in. Distribution on physical media is not available in all countries.
[{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SSCWRCK","label":"QMF for TSO\/CICS"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"8.1","Edition":"","Line of Business":{"code":"LOB35","label":"Mainframe SW"}}]
Document Information
Modified date:
17 June 2008