From c52c9a16ed8f657bab260fdd44dbc03200b64eb9 Mon Sep 17 00:00:00 2001 From: Andrii Shvaika Date: Wed, 29 Sep 2021 12:16:39 +0300 Subject: [PATCH] Shutdown of the MQTT Transport in case of OOM error. --- .../server/transport/mqtt/MqttTransportHandler.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/common/transport/mqtt/src/main/java/org/thingsboard/server/transport/mqtt/MqttTransportHandler.java b/common/transport/mqtt/src/main/java/org/thingsboard/server/transport/mqtt/MqttTransportHandler.java index d8d06a3173..80a2f49be7 100644 --- a/common/transport/mqtt/src/main/java/org/thingsboard/server/transport/mqtt/MqttTransportHandler.java +++ b/common/transport/mqtt/src/main/java/org/thingsboard/server/transport/mqtt/MqttTransportHandler.java @@ -717,6 +717,10 @@ public class MqttTransportHandler extends ChannelInboundHandlerAdapter implement public void exceptionCaught(ChannelHandlerContext ctx, Throwable cause) { log.error("[{}] Unexpected Exception", sessionId, cause); ctx.close(); + if (cause instanceof OutOfMemoryError) { + log.error("Received critical error. Going to shutdown the service."); + System.exit(1); + } } private static MqttSubAckMessage createSubAckMessage(Integer msgId, List grantedQoSList) {