diff --git a/mysql-test/suite/rpl/r/rpl_temporary.result b/mysql-test/suite/rpl/r/rpl_temporary.result index c3b228e6089..8a9ddaec9f6 100644 --- a/mysql-test/suite/rpl/r/rpl_temporary.result +++ b/mysql-test/suite/rpl/r/rpl_temporary.result @@ -108,13 +108,16 @@ select * from t1; a 1 drop table t1; -Bug#43748 -make a non-privileged user on slave. +-- Bug#43748 +-- make a user on the slave that can list but not kill system threads. FLUSH PRIVILEGES; -GRANT USAGE ON *.* TO user43748@127.0.0.1 IDENTIFIED BY 'meow'; -try to KILL system-thread as non-privileged user. -KILL `select id from information_schema.processlist where command='Binlog Dump'`; -ERROR HY000: You are not owner of thread `select id from information_schema.processlist where command='Binlog Dump'` -throw out test-user on slave. +GRANT USAGE ON *.* TO user43748@127.0.0.1 IDENTIFIED BY 'meow'; +GRANT PROCESS ON *.* TO user43748@127.0.0.1; +-- try to KILL system-thread as that non-privileged user (on slave). +SELECT id INTO @id FROM information_schema.processlist WHERE user='system user' LIMIT 1; +KILL @id; +Got one of the listed errors +-- throw out test-user on slave. DROP USER user43748@127.0.0.1; -done. back to master. +-- done. back to master. +End of 5.1 tests diff --git a/mysql-test/suite/rpl/t/rpl_temporary.test b/mysql-test/suite/rpl/t/rpl_temporary.test index a236bcf3b7b..4e83d39710c 100644 --- a/mysql-test/suite/rpl/t/rpl_temporary.test +++ b/mysql-test/suite/rpl/t/rpl_temporary.test @@ -228,36 +228,34 @@ source include/delete_anonymous_users.inc; # Bug#43748: crash when non-super user tries to kill the replication threads # ---echo Bug#43748 +--echo -- Bug#43748 +--echo -- make a user on the slave that can list but not kill system threads. connection slave; ---echo make a non-privileged user on slave. - FLUSH PRIVILEGES; -GRANT USAGE ON *.* TO user43748@127.0.0.1 IDENTIFIED BY 'meow'; - -let $id = `SELECT id FROM information_schema.processlist WHERE user='system user' LIMIT 1`; +GRANT USAGE ON *.* TO user43748@127.0.0.1 IDENTIFIED BY 'meow'; +GRANT PROCESS ON *.* TO user43748@127.0.0.1; +--echo -- try to KILL system-thread as that non-privileged user (on slave). connect (cont43748,127.0.0.1,user43748,meow,test,$SLAVE_MYPORT,); connection cont43748; ---echo try to KILL system-thread as non-privileged user. +SELECT id INTO @id FROM information_schema.processlist WHERE user='system user' LIMIT 1; ---replace_result $id "`select id from information_schema.processlist where command='Binlog Dump'`" ---error ER_KILL_DENIED_ERROR -eval KILL $id; +--error ER_KILL_DENIED_ERROR,ER_NO_SUCH_THREAD +KILL @id; disconnect cont43748; +--echo -- throw out test-user on slave. connection slave; ---echo throw out test-user on slave. DROP USER user43748@127.0.0.1; +--echo -- done. back to master. connection master; ---echo done. back to master. -# End of tests +--echo End of 5.1 tests