From 5bd50b80a75d4d5246e40d032e14397bcde036bb Mon Sep 17 00:00:00 2001 From: Dmitry Shulga Date: Tue, 11 Jan 2011 21:18:25 +0600 Subject: [PATCH] Fixed Bug#58887 - server not throwing "Packet too large" error if max_allowed_packet >= 16M. This bug was introduced by patch for bug#42503. This patch restores behaviour that there was before patch for bug#42503 was applied. --- sql/net_serv.cc | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/sql/net_serv.cc b/sql/net_serv.cc index d2d3b1903a2..0c559f5619d 100644 --- a/sql/net_serv.cc +++ b/sql/net_serv.cc @@ -170,17 +170,7 @@ my_bool net_realloc(NET *net, size_t length) DBUG_ENTER("net_realloc"); DBUG_PRINT("enter",("length: %lu", (ulong) length)); - /* - When compression is off, net->where_b is always 0. - With compression turned on, net->where_b may indicate - that we still have a piece of the previous logical - packet in the buffer, unprocessed. Take it into account - when checking that max_allowed_packet is not exceeded. - This ensures that the client treats max_allowed_packet - limit identically, regardless of compression being on - or off. - */ - if (length >= (net->max_packet_size + net->where_b)) + if (length >= net->max_packet_size) { DBUG_PRINT("error", ("Packet too large. Max size: %lu", net->max_packet_size));