Bug #69104 slave_max_allowed_packet not working propriety with binlog_format STATEMENT
Submitted: 30 Apr 2013 16:57 Modified: 30 Apr 2013 17:49
Reporter: Marcelo Altmann (OCA) Email Updates:
Status: Duplicate Impact on me:
None 
Category:MySQL Server: Replication Severity:S3 (Non-critical)
Version:5.1.69 OS:Linux
Assigned to: CPU Architecture:Any

[30 Apr 2013 16:57] Marcelo Altmann
Description:
When replicating data from master to slave I got and error:

Got a packet bigger than 'slave_max_allowed_packet' bytes

by default this variable come set as 1GB (I am using the default value), and the packet isn' that big.

I find out that the problem was related to max_allowed_packet 

How to repeat:
Create a master slave replication topology with binlog_format=STATEMENT
Change the Master max_allowed_packet to a number bigger then the default (8M for example)
Create a table with longtext field

CREATE TABLE `bigTable` (
  `id` int(11) DEFAULT NULL,
  `bigText` longtext
) ENGINE=MyISAM DEFAULT CHARSET=latin1

Insert a big row in this table (where bigText field is bigger then slave max_allowed_packet)

the replication will stop and an error will be displayed:
Got a packet bigger than 'slave_max_allowed_packet' bytes

Suggested fix:
OPTION 1: Change the message to reflect the real variable which cause the replication to break

OPTION 2: Change the replication to look to slave_max_allowed_packet instead of max_allowed_packet  also when binlog_format=STATEMENT
[30 Apr 2013 17:30] MySQL Verification Team
Seems to be duplicate of http://bugs.mysql.com/bug.php?id=68490
[30 Apr 2013 17:49] Sveta Smirnova
Closed as duplicate of bug #68490