diff --git a/src/main/java/com/actiontech/dble/services/FrontendService.java b/src/main/java/com/actiontech/dble/services/FrontendService.java index 738688e44..6d8aa043c 100644 --- a/src/main/java/com/actiontech/dble/services/FrontendService.java +++ b/src/main/java/com/actiontech/dble/services/FrontendService.java @@ -123,6 +123,9 @@ public abstract class FrontendService extends AbstractServ if (data != null && !executeTask.isReuse()) { this.setPacketId(executeTask.getLastSequenceId()); } + if (data != null && data.length - MySQLPacket.PACKET_HEADER_SIZE >= SystemConfig.getInstance().getMaxPacketSize()) { + throw new IllegalArgumentException("Packet for query is too large (" + data.length + " > " + SystemConfig.getInstance().getMaxPacketSize() + ").You can change maxPacketSize value in bootstrap.cnf."); + } this.handleInnerData(data);