MQTT engine: Failed to handle message on topic

Hi.

I’m investigating some MQTT server disconnection issues from the Engine server and I found the below exception recurring every single second. While data is arriving on the server it’s continuously throwing this error.

Ignition server 7.9.12, MQTT Engine and Transmission version 3.4.7.

What could cause it?
thanks

INFO   | jvm 1    | 2019/09/03 13:04:57 | E [c.c.m.e.g.EngineCallback      ] [13:04:57]: Failed to handle message on topic spBv1.0/dir01/NDATA/ips-edge-00005
INFO   | jvm 1    | 2019/09/03 13:04:57 | java.util.concurrent.RejectedExecutionException: Task com.cirruslink.mqtt.engine.gateway.EngineCallback$$Lambda$863/62337317@308da7eb rejec
ted from java.util.concurrent.ThreadPoolExecutor@53a66e10[Terminated, pool size = 0, active threads = 0, queued tasks = 0, completed tasks = 0]
INFO   | jvm 1    | 2019/09/03 13:04:57 |       at java.util.concurrent.ThreadPoolExecutor$AbortPolicy.rejectedExecution(ThreadPoolExecutor.java:2063)
INFO   | jvm 1    | 2019/09/03 13:04:57 |       at java.util.concurrent.ThreadPoolExecutor.reject(ThreadPoolExecutor.java:830)
INFO   | jvm 1    | 2019/09/03 13:04:57 |       at java.util.concurrent.ThreadPoolExecutor.execute(ThreadPoolExecutor.java:1379)
INFO   | jvm 1    | 2019/09/03 13:04:57 |       at com.cirruslink.mqtt.engine.gateway.EngineCallback.messageArrived(EngineCallback.java:174)
INFO   | jvm 1    | 2019/09/03 13:04:57 |       at com.cirruslink.chariot.client.CirrusClient.messageArrived(CirrusClient.java:546)
INFO   | jvm 1    | 2019/09/03 13:04:57 |       at org.eclipse.paho.client.mqttv3.internal.CommsCallback.deliverMessage(CommsCallback.java:477)
INFO   | jvm 1    | 2019/09/03 13:04:57 |       at org.eclipse.paho.client.mqttv3.internal.CommsCallback.handleMessage(CommsCallback.java:380)
INFO   | jvm 1    | 2019/09/03 13:04:57 |       at org.eclipse.paho.client.mqttv3.internal.CommsCallback.run(CommsCallback.java:184)
INFO   | jvm 1    | 2019/09/03 13:04:57 |       at java.lang.Thread.run(Thread.java:748)

You might need to ping Cirrus Link’s support channels. Only they would know the details. The execution engine pool size == zero looks suspicious.

1 Like

Agree with contacting Cirrus.

Maybe the module was restarted at some point but there’s a bug there?

1 Like

Thank you both, I will write to CL support!

CL support provided me an updated (test) module which fixes the issue! Just in case anyone else runs into the same issue this should get fixed in 3.4.8.