#At file:///Users/shulga/projects/mysql/mysql-5.1-bug58887/ based on revid:mattias.jonsson@stripped
3540 Dmitry Shulga 2011-01-11
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
Restored original right condition.
modified:
sql/net_serv.cc
=== modified file 'sql/net_serv.cc'
--- a/sql/net_serv.cc 2010-12-28 23:47:05 +0000
+++ b/sql/net_serv.cc 2011-01-11 10:44:29 +0000
@@ -170,17 +170,7 @@ my_bool net_realloc(NET *net, size_t len
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));
Attachment: [text/bzr-bundle] bzr/dmitry.shulga@oracle.com-20110111104429-dmnxvf60v41kj4aa.bundle
| Thread |
|---|
| • bzr commit into mysql-5.1 branch (Dmitry.Shulga:3540) Bug#58887 | Dmitry Shulga | 11 Jan |