mariadb/mysql-test/suite/roles/grant_revoke_current.test
Sergei Golubchik 78d23a3e60 fix error messages
when a definer for SP/view is wrong - it shold be ER_MALFORMED_DEFINER,
not ER_NO_SUCH_USER

when one uses current_role as a definer or grantee but there's no
current role - it should be ER_INVALID_ROLE not ER_MALFORMED_DEFINER

when a non-existent user is specified - it should be ER_NO_SUCH_USER,
which should say "The user does not exist", not "Definer does not exist"

clarify ER_CANT_CHANGE_TX_CHARACTERISTICS to say what cannot be changed
2025-05-02 13:56:25 +02:00

35 lines
932 B
Text

--source include/not_embedded.inc
--disable_cursor_protocol
select priv into @root_priv from mysql.global_priv where user='root' and host='localhost';
--enable_cursor_protocol
--error ER_INVALID_ROLE
grant select on *.* to current_role;
--error ER_INVALID_ROLE
revoke select on *.* from current_role;
--error ER_INVALID_ROLE
revoke all, grant option from current_role;
create role r1;
grant insert on test.* to r1;
grant r1 to current_user;
set role r1;
select current_role();
grant select on *.* to current_role;
show grants for current_role;
revoke insert on test.* from current_role;
show grants for current_role;
revoke all, grant option from current_role;
show grants for current_role;
set password=password('foobar');
show grants;
grant r1 to current_user() identified by 'barfoo';
show grants;
set password='';
#cleanup
drop role r1;
update mysql.global_priv set priv=@root_priv where user='root' and host='localhost';