# # Specific tests for case sensitive file systems # i.e. lower_case_filesystem=OFF # -- source include/have_case_sensitive_file_system.inc -- source include/not_embedded.inc -- source include/have_perfschema.inc set GLOBAL sql_mode=""; set LOCAL sql_mode=""; connect (master,localhost,root,,); connection master; create database d1; grant all on d1.* to 'sample'@'localhost' identified by 'password'; flush privileges; connect (sample,localhost,sample,password,d1); connection sample; select database(); --error ER_DBACCESS_DENIED_ERROR create database d2; --error ER_DBACCESS_DENIED_ERROR create database D1; disconnect sample; --source include/wait_until_disconnected.inc connection master; drop user 'sample'@'localhost'; drop database if exists d1; disconnect master; --source include/wait_until_disconnected.inc connection default; # End of 4.1 tests # # Bug#41049 does syntax "grant" case insensitive? # CREATE DATABASE d1; USE d1; CREATE TABLE T1(f1 INT); CREATE TABLE t1(f1 INT); GRANT SELECT ON T1 to user_1@localhost; connect (con1,localhost,user_1,,d1); --error ER_TABLEACCESS_DENIED_ERROR select * from t1; select * from T1; connection default; GRANT SELECT ON t1 to user_1@localhost; connection con1; --sorted_result select * from information_schema.table_privileges; connection default; disconnect con1; REVOKE ALL PRIVILEGES, GRANT OPTION FROM user_1@localhost; DROP USER user_1@localhost; DROP DATABASE d1; USE test; CREATE DATABASE db1; USE db1; CREATE PROCEDURE p1() BEGIN END; CREATE FUNCTION f1(i INT) RETURNS INT RETURN i+1; GRANT USAGE ON db1.* to user_1@localhost; GRANT EXECUTE ON PROCEDURE db1.P1 to user_1@localhost; GRANT EXECUTE ON FUNCTION db1.f1 to user_1@localhost; GRANT UPDATE ON db1.* to USER_1@localhost; connect (con1,localhost,user_1,,db1); call p1(); call P1(); select f1(1); connect (con2,localhost,USER_1,,db1); --error ER_PROCACCESS_DENIED_ERROR call p1(); --error ER_PROCACCESS_DENIED_ERROR call P1(); --error ER_PROCACCESS_DENIED_ERROR select f1(1); connection default; disconnect con1; disconnect con2; REVOKE ALL PRIVILEGES, GRANT OPTION FROM user_1@localhost; REVOKE ALL PRIVILEGES, GRANT OPTION FROM USER_1@localhost; DROP FUNCTION f1; DROP PROCEDURE p1; DROP USER user_1@localhost; DROP USER USER_1@localhost; DROP DATABASE db1; use test; # End of 5.0 tests --echo # --echo # Extra test coverage for Bug#56595 RENAME TABLE causes assert on OS X --echo # CREATE TABLE t1(a INT); CREATE TRIGGER t1_bi BEFORE INSERT ON t1 FOR EACH ROW SET new.a= 1; RENAME TABLE t1 TO T1; ALTER TABLE T1 RENAME t1; DROP TABLE t1; # # MDEV-13912 mysql_upgrade: case (in)sensitivity for stored procedures # create database TEST; create procedure TEST.pr() begin end; create procedure test.pr() begin end; --exec $MYSQL_UPGRADE --force 2>&1 drop procedure test.pr; drop database TEST; # End of 5.5 tests # # MDEV-9014 SHOW TRIGGERS not case sensitive # create table t1 (a int); create trigger t1_bi before insert on t1 for each row set new.a= 1; show triggers like '%T1%'; drop table t1; let $datadir= `select @@datadir`; remove_file $datadir/mariadb_upgrade_info; set GLOBAL sql_mode=default; --echo # --echo # MDEV-19632 Replication aborts with ER_SLAVE_CONVERSION_FAILED upon CREATE ... SELECT in ORACLE mode --echo # --echo # Compatibility schema names respect the filesystem case sensitivity --error ER_UNKNOWN_DATA_TYPE CREATE TABLE t1 (a MARIADB_SCHEMA.date); --error ER_UNKNOWN_DATA_TYPE CREATE TABLE t1 (a Mariadb_schema.date); CREATE TABLE t1 (a mariadb_schema.date); DROP TABLE t1;