APAR status
Closed as program error.
Error description
When running the MQ Managed File Transfer command: fteShowAgentDetails -v <agent_name> for an agent, the error message shown below is occasionally written to the standard error stream: Could not find key 'RecoveryTimedOut' in ResourceBundle 'com.ibm.wmqfte.statestore.BFGSTElements'
Local fix
n/a
Problem summary
**************************************************************** USERS AFFECTED: This issue affects users of MQ 9.2 Managed File Transfer who: - Have enabled the transfer recovery timeout functionality for managed transfers - And use the fteShowAgentDetails command, specifying the -v option, to get verbose information about the source agents for those managed transfers. Platforms affected: MultiPlatform **************************************************************** PROBLEM DESCRIPTION: When the fteShowAgentDetails command is run with the -v option specified, the output contains information about all of the managed transfers that the requested agent is currently involved in. Here is an example of the output from the command that shows this: ------------------------------------------------------------ ... Maximum Number of Running Source Transfers: 25 Maximum Number of Queued Source Transfers: 1000 Source Transfer States: TransferId State 414d51204d49414f5720202020202020822c5b4a648c0b20 progress 414d51204d49414f5720202020202020822c5b4a346c0b20 progress Maximum Number of Running Destination Transfers: 25 Destination Transfer States: No current transfers ... ------------------------------------------------------------ The command gets this information from the agent's status publication, which is held in a retained publication on the topic SYSTEM.FTE topic on the coordination queue manager, under the topic string Agents/<agent name>. The status publication reports the managed transfer states using one of the values documented in the: MFT agent transfer states topic in the MQ sections of IBM Documentation show all of the possible managed transfer states i (for reference, the URI of this topic in the MQ 9.2 section of IBM Documentation is https://www.ibm.com/docs/en/ibm-mq/9.2?topic=format-mft-agent-tr ansfer-states). When the fteShowAgentDetails command is run with the -v option, it will parse the agent's status publication to get a list of all of the managed transfers that the agent is currently involved in. For each managed transfer, the command will then: - Extract the current state. - Obtain a NLS string representing the state from an internal ResourceBundle. - And display the transfer identifier for that managed transfer, along with the NLS string representing its state. In MQ 9.1.5 CD and 9.2 Managed File Transfer, a new transfer state called RecoveryTimedOut was added. The source agent for a managed transfer would move it into this state if: - A transfer recovery timeout was set for the managed transfer. - And the managed transfer had entered recovery, and subsequently timed out. However, when this state was added, the internal ResourceBundle that provided the mapping between the transfer states and the NLS strings representing those states was not updated and so did not include an entry for the RecoveryTimedOut state. This meant that: - If the fteShowAgentDetails command was run for an agent, with the -v option specified. - And the agent was acting as the source agent for a managed transfer that was in the RecoveryTimedOut state. then the command was unable to find an NLS string for the RecoveryTimedOut state in the internal resource bundle. As a result, the error: Could not find key 'RecoveryTimedOut' in ResourceBundle 'com.ibm.wmqfte.statestore.BFGSTElements' was written to the standard error stream, and the command showed the managed transfer state as: RecoveryTimedOut The text for the state was always shown in English. An example of this is shown below: ------------------------------------------------------------ ... Source Transfer States: TransferId State Could not find key 'RecoveryTimedOut' in ResourceBundle 'com.ibm.wmqfte.statestore.BFGSTElements' 414d51207061756c745639324c54532056d3e16023108f03 RecoveryTimedOut ... ------------------------------------------------------------
Problem conclusion
To resolve this issue, MQ Managed File Transfer has been updated so that the internal ResourceBundle used to map transfer states to NLS strings now contains an entry for the transfer state RecoveryTimedOut. This ensures that: - If the fteShowAgentDetails command is run for an agent, with the -v option specified. - And the agent is acting as the source agent for a managed transfer that is in the RecoveryTimedOut state. then the command will be able to map the RecoveryTimedOut state to an NLS string, which prevents the error mentioned in this APAR from occurring. In English, the NLS string used to represent the RecoveryTimedOut state is : recovery timed out as shown in the example below: ------------------------------------------------------------ ... Source Transfer States: TransferId State 414d51207061756c745639324c54532056d3e16023108f03 recovery timed out ... ------------------------------------------------------------ --------------------------------------------------------------- The fix is targeted for delivery in the following PTFs: Version Maintenance Level v9.2 LTS 9.2.0.4 v9.x CD 9.2.4 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
IT37566
Reported component name
MQ BASE V9.2
Reported component ID
5724H7281
Reported release
920
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2021-07-10
Closed date
2021-07-23
Last modified date
2021-07-23
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
MQ BASE V9.2
Fixed component ID
5724H7281
Applicable component levels
[{"Line of Business":{"code":"LOB45","label":"Automation"},"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSYHRD","label":"IBM MQ"},"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"920"}]
Document Information
Modified date:
24 July 2021