Bug #77932 grant on master could break replication and unauthorised user creation slaves
Submitted: 4 Aug 2015 10:49 Modified: 4 Aug 2015 12:59
Reporter: Miguel Angel Nieto Email Updates:
Status: Verified Impact on me:
None 
Category:MySQL Server: Replication Severity:S2 (Serious)
Version:5.1 5.5, 5.5.45, 5.5.46 OS:Any
Assigned to: CPU Architecture:Any

[4 Aug 2015 10:49] Miguel Angel Nieto
Description:
A grant failed on master could break the replication. Also, the user not created on master is created on slaves.

How to repeat:
Master with slave.

On master as root:

grant usage,select,create routine,execute on test.* to 'miguel'@'%' with grant option;

On master as miguel:

CREATE FUNCTION hello (s CHAR(20)) RETURNS CHAR(50) DETERMINISTIC RETURN CONCAT('Hello, ',s,'!');

GRANT EXECUTE on FUNCTION hello TO 'yyy'@'%';

Last command fails with:

ERROR 1410 (42000): You are not allowed to create a user with GRANT

and slave breaks with:

               Last_SQL_Error: Query caused different errors on master and slave. Error on master: message (format)='You are not allowed to create a user with GRANT' error code=1410 ; Error on slave: actual message='no error', error code=0. Default database: 'test'. Query: 'GRANT EXECUTE on FUNCTION hello TO 'yyy'@'%''

so, the user yyy is created on the slave.

I cannot repeat on 5.6.
[4 Aug 2015 12:59] MySQL Verification Team
Hello Miguel,

Thank you for the report.
Verified as described on 5.5.45 GA build.

Thanks,
Umesh
[4 Aug 2015 12:59] MySQL Verification Team
test results

Attachment: 77932_5.5.45.results (application/octet-stream, text), 9.28 KiB.

[4 Aug 2015 13:32] MySQL Verification Team
-- 5.5.46 build is also affected but I'm not seeing this issue on 5.6.27 builds
[4 Aug 2015 13:33] MySQL Verification Team
test results

Attachment: 77932_5.5.46.results (application/octet-stream, text), 12.22 KiB.