APAR status
Closed as program error.
Error description
A IBM MQ MFT agent has been instructed to run a message-to-file transfer, to transfer a message on an IBM MQ queue to a file on a filesystem. The transfer completed successfully, but the message on the source queue was left behind after the transfer had finished. The following FFDC was generated by the IBM MQ MFT source agent: Thread: 29 (CommandHandler) Class: com.ibm.wmqfte.cmdhandler.impl.FTECommandThread Method: run Probe: FFDC_001 Cause: com.ibm.wmqfte.cmdhandler.FTECommandHandlerErrorException: BFGCH0066E: An internal error has occurred. An exception has been reported by the State Store. The exception is java.lang.NullPointerException com.ibm.wmqfte.cmdhandler.FTECommandHandlerErrorException: BFGCH0066E: An internal error has occurred. An exception has been reported by the State Store. The exception is java.lang.NullPointerException at com.ibm.wmqfte.cmdhandler.impl.FTECommandHandlerStateStoreImpl.p rocessInternalCommand(FTECommandHandlerStateStoreImpl.java:824) at com.ibm.wmqfte.cmdhandler.impl.MessageHandlerImpl.internalMessag eHandler(MessageHandlerImpl.java:433) at com.ibm.wmqfte.cmdhandler.impl.MessageHandlerImpl.processCommand (MessageHandlerImpl.java:165) at com.ibm.wmqfte.cmdhandler.impl.MessageHandlerImpl.processCommand (MessageHandlerImpl.java:154) at com.ibm.wmqfte.cmdhandler.impl.FTECommandThread.run(FTECommandTh read.java:345) at java.lang.Thread.run(Thread.java:820) at com.ibm.wmqfte.thread.FTEThread.run(FTEThread.java:70) Caused by: java.lang.NullPointerException at com.ibm.wmqfte.io.queue.FTEQueueChannel.openForRead(FTEQueueChan nel.java:329) at com.ibm.wmqfte.io.queue.FTEQueueFilterChannel.openForRead(FTEQue ueFilterChannel.java:129) at com.ibm.wmqfte.statestore.impl.FTEMutableSenderState.processSour ceDisposition(FTEMutableSenderState.java:1144) at com.ibm.wmqfte.statestore.impl.FTEMutableSenderState.addProgress Audit(FTEMutableSenderState.java:836) at com.ibm.wmqfte.statestore.impl.FTEStateStoreImpl.publishProgress Audit(FTEStateStoreImpl.java:1820) at com.ibm.wmqfte.statestore.impl.FTEStateStoreImpl.publishProgress Audit(FTEStateStoreImpl.java:1620) at com.ibm.wmqfte.transfer.impl.TransferSenderRunnable.generateAudi tInformation(TransferSenderRunnable.java:1345) at com.ibm.wmqfte.transfer.impl.TransferSenderRunnable.auditComplet e(TransferSenderRunnable.java:1472) at com.ibm.wmqfte.transfer.impl.TransferSenderImpl.onComplete(Trans ferSenderImpl.java:312) at com.ibm.wmqfte.statestore.impl.FTEStateStoreImpl.sendForgetToFar End(FTEStateStoreImpl.java:1413) at com.ibm.wmqfte.cmdhandler.impl.FTECommandHandlerStateStoreImpl.p rocessInternalCommand(FTECommandHandlerStateStoreImpl.java:755) ... 6 more
Local fix
Problem summary
**************************************************************** USERS AFFECTED: Users of IBM MQ MFT who are making use of the message-to-file transfer functionality. Platforms affected: MultiPlatform **************************************************************** PROBLEM DESCRIPTION: When a message-to-file transfer takes place, the source disposition is always configured to delete the message on the queue. There was a timing window when deleting the message, where the internal object representing the connection to the queue manager could be set to the value 'null', before the source disposition phase took place. If this happened, then the CommandHandler thread on the source agent would throw a java.lang.NullPointerException, and an FFDC of the following form would be recorded: Thread: 29 (CommandHandler) Class: com.ibm.wmqfte.cmdhandler.impl.FTECommandThread Method: run Probe: FFDC_001 Cause: com.ibm.wmqfte.cmdhandler.FTECommandHandlerErrorException: BFGCH0066E: An internal error has occurred. An exception has been reported by the State Store. The exception is java.lang.NullPointerException com.ibm.wmqfte.cmdhandler.FTECommandHandlerErrorException: BFGCH0066E: An internal error has occurred. An exception has been reported by the State Store. The exception is java.lang.NullPointerException at com.ibm.wmqfte.cmdhandler.impl.FTECommandHandlerStateStoreImpl.p rocessInternalCommand at com.ibm.wmqfte.cmdhandler.impl.MessageHandlerImpl.internalMessag eHandler at com.ibm.wmqfte.cmdhandler.impl.MessageHandlerImpl.processCommand at com.ibm.wmqfte.cmdhandler.impl.MessageHandlerImpl.processCommand at com.ibm.wmqfte.cmdhandler.impl.FTECommandThread.run at com.ibm.wmqfte.thread.FTEThread.run Caused by: java.lang.NullPointerException at com.ibm.wmqfte.io.queue.FTEQueueChannel.openForRead at com.ibm.wmqfte.io.queue.FTEQueueFilterChannel.openForRead at com.ibm.wmqfte.statestore.impl.FTEMutableSenderState.processSour ceDisposition at com.ibm.wmqfte.statestore.impl.FTEMutableSenderState.addProgress Audit at com.ibm.wmqfte.statestore.impl.FTEStateStoreImpl.publishProgress Audit at com.ibm.wmqfte.statestore.impl.FTEStateStoreImpl.publishProgress Audit at com.ibm.wmqfte.transfer.impl.TransferSenderRunnable.generateAudi tInformation at com.ibm.wmqfte.transfer.impl.TransferSenderRunnable.auditComplet e at com.ibm.wmqfte.transfer.impl.TransferSenderImpl.onComplete at com.ibm.wmqfte.statestore.impl.FTEStateStoreImpl.sendForgetToFar End The result of this was that the transfer source message was not removed from the queue, even though the transfer was marked as successfully completed.
Problem conclusion
The IBM MQ MFT source agent code has been updated such that during message-to-file transfers, the internal object is not set to the value 'null' before the source message has been deleted from the queue at the end of the transfer. --------------------------------------------------------------- The fix is targeted for delivery in the following PTFs: Version Maintenance Level v9.1 LTS 9.1.0.8 v9.2 LTS 9.2.0.2 v9.x CD 9.2.2 The latest available MQ 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
IT35222
Reported component name
IBM MQ MFT V9.1
Reported component ID
5724H7272
Reported release
910
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2020-12-09
Closed date
2021-01-29
Last modified date
2021-01-29
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
IBM MQ MFT V9.1
Fixed component ID
5724H7272
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":"910"}]
Document Information
Modified date:
30 January 2021