APAR status
Closed as program error.
Error description
MQXR Service received an unexpected DISCONNECT packet from an MQTT client which caused the following FDC: | Source Class :- com.ibm.mq.MQXRService.MQTTServerSession | | Source Method :- makeStateChange | | Probe Id :- XR070013 java.lang.Exception: State error state:=PROTOCOL_ERROR previousState:DISCONNECTED at com.ibm.mq.MQXRService.MQTTServerSession.makeStateChange(MQTTSer verSession.java:1571) at com.ibm.mq.MQXRService.MQTTServerSessionV311.receivePubComp(MQTT ServerSessionV311.java:1110) at com.ibm.mq.MQXRService.MQTTServerSessionV311.handleReceive(MQTTS erverSessionV311.java:145) at com.ibm.mq.MQXRService.MQTTServerContext.handleReceive(MQTTServe rContext.java:153) at com.ibm.mq.MQXRService.MQTTWireContext.receive(MQTTWireContext.j ava:403) at com.ibm.mq.communications.NonBlockingSslConnection.receive(NonBl ockingSslConnection.java:491) at com.ibm.mq.communications.NonBlockingWorker.run(NonBlockingWorke r.java:398) at java.lang.Thread.run(Thread.java:785) :--------------------------------------------------------------- -----------------------------------: : Object :- java.lang.Exception: State error state:=PROTOCOL_ERROR previousState:DISCON : : :- NECTED : state=PROTOCOL_ERROR(com.ibm.mq.MQXRService.MQTTServerSession$Co ntextState) Class: class com.ibm.mq.MQXRService.MQTTServerSession$ContextState previousState=DISCONNECTED(com.ibm.mq.MQXRService.MQTTServerSess ion$ContextState) history([Lcom.ibm.mq.MQXRService.MQTTServerSession$HistoryEvent; ) 0 Wed Apr 05 22:26:07 BST 2017 SEND_MQTT mqttMessageType:PUBREL 1 Wed Apr 05 22:26:07 BST 2017 RECEIVED_MQTT mqttMessageType:DISCONNECT 2 Wed Apr 05 22:26:07 BST 2017 RECEIVED_MQTT mqttMessageType:PUBCOMP 3 Wed Apr 05 22:26:06 BST 2017 SEND_MQTT mqttMessageType:SUBACK 4 Wed Apr 05 22:26:06 BST 2017 RECEIVED_MQTT mqttMessageType:PUBLISH 5 Wed Apr 05 22:26:07 BST 2017 SEND_MQTT mqttMessageType:PUBREC 6 Wed Apr 05 22:26:07 BST 2017 SEND_MQTT mqttMessageType:PUBLISH 7 Wed Apr 05 22:26:07 BST 2017 RECEIVED_MQTT mqttMessageType:PUBREL 8 Wed Apr 05 22:26:07 BST 2017 SEND_MQTT mqttMessageType:PUBCOMP 9 Wed Apr 05 22:26:07 BST 2017 RECEIVED_MQTT mqttMessageType:PUBREC historyIndex=3(int) SPSS: XRASECB
Local fix
N/A
Problem summary
**************************************************************** USERS AFFECTED: This issue affects users connecting to a queue manager's MQXR service with Paho MQTT clients, which disconnect while receiving QoS 2 messages from the MQXR server as a result of a previously made subscriptions. Platforms affected: MultiPlatform **************************************************************** PROBLEM DESCRIPTION: The queue manager's MQXR service threw an FDC with probe ID XR070013, reporting a PROTOCOL_ERROR. The packet history in the FDC showed that a connected MQTT client sent a DISCONNECT packet followed by a PUBCOMP packet - for instance: RECEIVED_MQTT mqttMessageType:DISCONNECT RECEIVED_MQTT mqttMessageType:PUBCOMP
Problem conclusion
When a MQTT client sends a DISCONNECT packet followed by a PUBCOMP packet (or other similar invalid combination of MQTT packets), an FDC is no longer thrown - instead a message is written to the mqxr.log file indicating that a protocol error has occurred as a result of MQTT packets being sent in the wrong order, giving some details to help identify the client which sent the invalid MQTT packets. For instance for a client which connected using a client identifier "client123" from a local IPv6 connection a message would be logged like: AMQXR2087I: Client with identifier 'client123' at network address '0:0:0:0:0:0:0:1' sent an unexpected MQTT packet causing a protocol error: state: 'PROTOCOL_ERROR' previousState: 'DISCONNECTED' --------------------------------------------------------------- The fix is targeted for delivery in the following PTFs: Version Maintenance Level v8.0 8.0.0.11 v9.0 LTS 9.0.0.6 v9.1 CD 9.1.2 v9.1 LTS 9.1.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
IT25277
Reported component name
IBM MQ BASE M/P
Reported component ID
5724H7261
Reported release
900
Status
CLOSED PER
PE
NoPE
HIPER
NoHIPER
Special Attention
NoSpecatt / Xsystem
Submitted date
2018-06-06
Closed date
2018-11-15
Last modified date
2018-12-06
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 BASE M/P
Fixed component ID
5724H7261
Applicable component levels
[{"Business Unit":{"code":"BU053","label":"Cloud & Data Platform"},"Product":{"code":"SSYHRD","label":"IBM MQ"},"Component":"","ARM Category":[],"Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"9.0","Edition":"","Line of Business":{"code":"LOB45","label":"Automation"}}]
Document Information
Modified date:
06 December 2018