IBM Support

SE52583 - OSP FIX MULTIPLE ITEMS WITH PROGRAM QMHLOGER AND QHST LOGGING

Subscribe to this APAR

By subscribing, you receive periodic emails alerting you to the status of the APAR, along with a link to the fix after it becomes available. You can track this item individually or track all items by product.

Notify me when this APAR changes.

Notify me when an APAR for this component changes.

 APAR (Authorized Program Analysis Report)

Abstract

OSP FIX MULTIPLE ITEMS WITH PROGRAM QMHLOGER AND QHST LOGGING

Error Description

Program QMHLOGER handles QHST logging, which involves moving    
messages from the QHST message queue to a QHST database file.  
The logging occurs in the SCPF job.  These are some problems    
with the logging support:                                      
                                                               
1) Fix message queue logical damage recovery invocation.  When  
logical damage or corruption on QHST or QSYSOPR is detected by  
system code, it forces an MSGMCH0601 to cause message queue    
cleanup to be invoked.  The cleanup attempts to recover all    
messages that it can and allow the message queue to be used    
again. Due to a low-level change in the system in an earlier    
release of the operating system, the MCH0601 is not being      
generated as expected. This causes message operations to        
continue running after logical damage or corruption is detected.
This may cause a loop or unpredictable results in the message  
operation.  A change will be made to use a different method to  
force the MSGMCH0601, which will allow message queue damage    
recovery to be invoked as it was in the past.                  
                                                               
2)  Keep logical damage message in the job log.  When QHST      
message queue is found to be logically damaged (corrupted due to
the system ending immediately) an MSGMCH0601 is forced to cause
message queue recovery/fix-up to be invoked.  Currently the MCH
message does not remain in the SCPF job log.  The MCH should    
remain in the SCPF job log to indicate the detection.          
                                                               
3)  QHST message queue becomes full.  When QHST becomes full,  
new jobs cannot be started because job initiation sends a      
message to QHST and the send results in MSGCPF2460 (message    
queue could not be extended).  One cause of QHST becoming full  
involves program QMHLOGER when it is moving messages off of the
QHST message queue.  While moving off a message, the current    
QHST database file is full so QMHLOGER issues MSGCPF2456 (Log  
version closed and should be saved) to QSYSOPR.  If the message
cannot be sent due to a problem with the QSYSOPR message queue,
then program QMHLOGER ends and no more messages are moved off  
QHST.  This results in QHST becoming full.  Program QMHLOGER    
should ignore errors when sending the CPF2456 and continue      
processing so it does not allow QHST to become full.            
                                                               
4)  Send message to SCPF job log.  When program QMHLOGER sends a
message to QSYSOPR and an error occurs, currently the user is  
not informed of the message that was attempting to be issued.  
An example of some messages that are sent by program QMHLOGER to
QSYSOPR are MSGCPI2414 (Original run priority for SCPF has been
reinstated), MSGCPF2456 (Log version closed and should be      
saved), and MSGCPF2503 (Message queue for system log damaged).  
When the message cannot be sent to QSYSOPR, it should be sent to
the SCPF job log so there is a record of the activity or        
problem.                                                        
                                                               
5)  Indicate message file not found.  When moving a message to  
the QHST database file and its sending message file could not be
found, there is no record of this problem in the SCPF job log.  
The message is put into the QHST database file and the text of  
MSGCPF2529 (Message file not found for message) is shown when  
DSPLOG is used.  Once the message file exists again, DSPLOG no  
longer shows CPF2529.  When program QMHLOGER cannot find a      
message file, send a CPF2529 to the SCPF job log to have a      
record of the failure.                                          
                                                               
6)  DSPLOG sending program omitted.  When the Display Log      
(DSPLOG) command is used, the sending program name is not      
provided.  The sending program name is available in the QHST    
message queue so it should be included in the QHST database    
file, so it can be viewed via the DSPLOG command.              

Problem Summary

****************************************************************
* PROBLEM: (SE52583) Licensed Program = 5770SS1                *
*           Looping Condition                                  *
****************************************************************
* USERS AFFECTED: All IBM i operating system users for i 7.1.  *
****************************************************************
* RECOMMENDATION: Apply PTF SI47354 for i 7.1.                 *
****************************************************************
Program QMHLOGER handles QHST logging, which involves moving    
messages from the QHST message queue to a QHST database file.  
The logging occurs in the SCPF job.  These are some problems    
with the logging support:                                      
                                                               
1) Fix message queue logical damage recovery invocation.  When  
logical damage or corruption on QHST or QSYSOPR is detected by  
system code, it forces an MSGMCH0601 to cause message queue    
cleanup to be invoked.  The cleanup attempts to recover all    
messages that it can and allow the message queue to be used    
again. Due to a low-level change in the system in an earlier    
release of the operating system, the MCH0601 is not being      
generated as expected. This causes message operations to        
continue running after logical damage or corruption is detected.
This may cause a loop or unpredictable results in the message  
operation.  A change will be made to use a different method to  
force the MSGMCH0601, which will allow message queue damage    
recovery to be invoked as it was in the past.                  
                                                               
2)  Keep logical damage message in the job log.  When QHST      
message queue is found to be logically damaged (corrupted due to
the system ending immediately) an MSGMCH0601 is forced to cause
message queue recovery/fix-up to be invoked.  Currently the MCH
message does not remain in the SCPF job log.  The MCH should    
remain in the SCPF job log to indicate the detection.          
                                                               
3)  QHST message queue becomes full.  When QHST becomes full,  
new jobs cannot be started because job initiation sends a      
message to QHST and the send results in MSGCPF2460 (message    
queue could not be extended).  One cause of QHST becoming full  
involves program QMHLOGER when it is moving messages off of the
QHST message queue.  While moving off a message, the current    
QHST database file is full so QMHLOGER issues MSGCPF2456 (Log  
version closed and should be saved) to QSYSOPR.  If the message
cannot be sent due to a problem with the QSYSOPR message queue,
then program QMHLOGER ends and no more messages are moved off  
QHST.  This results in QHST becoming full.  Program QMHLOGER    
should ignore errors when sending the CPF2456 and continue      
processing so it does not allow QHST to become full.            
                                                               
4)  Send message to SCPF job log.  When program QMHLOGER sends a
message to QSYSOPR and an error occurs, currently the user is  
not informed of the message that was attempting to be issued.  
An example of some messages that are sent by program QMHLOGER to
QSYSOPR are MSGCPI2414 (Original run priority for SCPF has been
reinstated), MSGCPF2456 (Log version closed and should be      
saved), and MSGCPF2503 (Message queue for system log damaged).  
When the message cannot be sent to QSYSOPR, it should be sent to
the SCPF job log so there is a record of the activity or        
problem.                                                        
                                                               
5)  Indicate message file not found.  When moving a message to  
the QHST database file and its sending message file could not be
found, there is no record of this problem in the SCPF job log.  
The message is put into the QHST database file and the text of  
MSGCPF2529 (Message file not found for message) is shown when  
DSPLOG is used.  Once the message file exists again, DSPLOG no  
longer shows CPF2529.  When program QMHLOGER cannot find a      
message file, send a CPF2529 to the SCPF job log to have a      
record of the failure.                                          

Problem Conclusion

Program QMHLOGER will be changed to fix the problems identified
above.                                                          

Temporary Fix

                        *********                              
                        * HIPER *                              
                        *********                              

Comments

Circumvention


PTFs Available

R710 SI47354 PTF Cover Letter   2279

Affected Modules

         
         

Affected Publications

Summary Information

Status............................................ CLOSED PER
HIPER........................................... Yes
Component.................................. 5770SS1WM
Failing Module.......................... RCHMGR
Reported Release................... R710
Duplicate Of..............................




System i Support

IBM disclaims all warranties, whether express or implied, including, but not limited to, the implied warranties of merchantability and fitness for a particular purpose. By furnishing this document, IBM grants no licenses to any related patents or copyrights. Copyright © 1996,1997,1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017 IBM Corporation. Any trademarks and product or brand names referenced in this document are the property of their respective owners. Consult the Terms of use link for trademark information

[{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG15Q","label":"APARs - OS\/400 General"},"Component":"","ARM Category":[],"Platform":[{"code":"PF012","label":"IBM i"}],"Version":"V7R1M0","Edition":"","Line of Business":{"code":"","label":""}},{"Business Unit":{"code":"BU054","label":"Systems w\/TPS"},"Product":{"code":"SG16C","label":"APARs - IBM i 7.1 environment"},"Component":"","ARM Category":[],"Platform":[{"code":"PF012","label":"IBM i"}],"Version":"V7R1M0","Edition":"","Line of Business":{"code":"","label":""}}]

Document Information

Modified date:
13 October 2012