APAR status
Closed as program error.
Error description
WMQ 7.0.1.x generating FDCs which report EIO errors. Examples: AD020000 adiSetFSize Rc=5 from ftruncate AD030001 adiReadFile read --> -1, errno = 5 AD029000 adiCloseFile Rc=5 from close AD031001 adiWriteFile Rc=5 from write XC407051 xeiWriteFn 5 - Input/output error from write HL149037 mqloWriteFile 5 (0x5) While these have been seen where a Linux NFS client is being used, it is possible for them to occur at other times as well. WMQ has three possible reactions to an EIO error: 1. immediately ends 2. gets damaged object(s) / queue manager continues to run 3. handles the EIO successfully EIO errors, such as those related to the recovery log, are fatal. The queue manager will be subjected to some level of failure. An EIO error that might be handled okay would be an EIO error when opening a queue file. NOTE: EIO errors get passed to WMQ from the operating system so the underlying cause of the EIO error would need to be investigated by the OS and/or disk vendor.
Local fix
Problem summary
**************************************************************** USERS AFFECTED: This issue could potentially affect any customer using MQ version 7 or 8, who is suffering from IO errors relating to files in the queue manager directory tree, resulting in an EIO return code being returned to the queue manager. Platforms affected: AIX, HP-UX Itanium, HP-UX PA-RISC, IBM iSeries, Linux on Power, Linux on S390, Linux on x86, Linux on x86-64, Linux on zSeries, Solaris SPARC, Solaris x86-64, Windows **************************************************************** PROBLEM DESCRIPTION: When MQ receives an EIO error it should take one of three actions: 1. create diagnostic data, return an unexpected error to the relevant MQI call, and otherwise ignore the error. 2. create diagnostic data, return an unexpected error to the relevant MQI call, and mark the associated object as damaged. 3. abruptly terminate the queue manager. An example of 1 above could include the EIO error being raised when deleting a queue. An example of 2 above could include the EIO error being raised when committing a put or get. An example of 3 above could include a failure to read or write from or to the MQ recovery log. In general it is preferable to take action 1 in preference to 2 in preference to 3. This APAR corrects a couple of issues that allow some error cases to move for category 2 to category 1, or from category 3 to category 2. This APAR has no effect on any customer not suffering from EIO errors against the queue manager data tree (queue manager objects only).
Problem conclusion
These changes were identified while investigating a defect on Linux (RHEL defect 867570) which was causing EIO errors to be raised in error. These EIO errors then caused the MQ error handling of this return code to be exercised and it was observed that some failures resulted in a more extreme course of action being taken than seemed warranted in the circumstances. While this change corrects this error handling within the queue manager, MQ cannot prevent EIO errors from being generated by the operating system, and such errors should continue to be investigated by system administrators as appropriate for the environment. --------------------------------------------------------------- The fix is targeted for delivery in the following PTFs: Version Maintenance Level v7.0 7.0.1.13 v7.1 7.1.0.7 v7.5 7.5.0.5 v8.0 8.0.0.2 The latest available maintenance can be obtained from 'WebSphere MQ Recommended Fixes' http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg27006037 If the maintenance level is not yet available information on its planned availability can be found in 'WebSphere MQ Planned Maintenance Release Dates' http://www-1.ibm.com/support/docview.wss?rs=171&uid=swg27006309 ---------------------------------------------------------------
Temporary fix
Comments
APAR Information
APAR number
IV65528
Reported component name
WMQ LIN X86 V7
Reported component ID
5724H7224
Reported release
701
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2014-10-03
Closed date
2015-01-20
Last modified date
2015-11-18
APAR is sysrouted FROM one or more of the following:
APAR is sysrouted TO one or more of the following:
Fix information
Fixed component name
WMQ LIN X86 V7
Fixed component ID
5724H7224
Applicable component levels
[{"Line of Business":{"code":"LOB45","label":"Automation"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSFKSJ","label":"WebSphere MQ"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"7.0.1"}]
Document Information
Modified date:
08 March 2021