mirror of
https://github.com/actiontech/dble.git
synced 2026-01-05 20:30:40 -06:00
Merge pull request #3540 from actiontech/fix/max
fix: front-end determines that the packet size cannot exceed the set value
This commit is contained in:
@@ -20,6 +20,7 @@ import com.actiontech.dble.net.executor.ThreadContext;
|
||||
import com.actiontech.dble.net.executor.ThreadPoolStatistic;
|
||||
import com.actiontech.dble.net.mysql.AuthPacket;
|
||||
import com.actiontech.dble.net.mysql.ErrorPacket;
|
||||
import com.actiontech.dble.net.mysql.MySQLPacket;
|
||||
import com.actiontech.dble.net.mysql.OkPacket;
|
||||
import com.actiontech.dble.net.service.*;
|
||||
import com.actiontech.dble.services.manager.ManagerService;
|
||||
@@ -180,6 +181,10 @@ public abstract class FrontendService<T extends UserConfig> extends AbstractServ
|
||||
if (!executeTask.isReuse()) {
|
||||
this.setPacketId(executeTask.getLastSequenceId());
|
||||
}
|
||||
byte[] data = executeTask.getOrgData();
|
||||
if (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.");
|
||||
}
|
||||
}
|
||||
|
||||
super.consumeSingleTask(serviceTask);
|
||||
|
||||
Reference in New Issue
Block a user