mariadb/mysql-test/t/drop-no_root.test
Alexander Nozdrin 104efe86ab A backport of patch for Bug#26704.
Original revision is from mysql-6.0-codebase:

revno: 2630.3.1
committer: Alexander Nozdrin <alik@mysql.com>
branch nick: 6.0-rt-bug26704
timestamp: Thu 2008-05-29 21:04:06 +0400
message:
  A fix for Bug#26704: Failing DROP DATABASE brings
  mysql-client out of sync.

  The problem was that we changed current database w/o caring
  whether it was dropped successfully or not.

  The fix is not to change current database if we failed to drop it.
2009-10-07 20:39:57 +04:00

49 lines
975 B
Text

# This test uses chmod, can't be run with root permissions
--source include/not_as_root.inc
###########################################################################
--echo
--echo # --
--echo # -- Bug#26704: Failing DROP DATABASE brings mysql-client out of sync.
--echo # --
--echo
--disable_warnings
DROP DATABASE IF EXISTS mysql_test;
--enable_warnings
--echo
CREATE DATABASE mysql_test;
CREATE TABLE mysql_test.t1(c INT);
use mysql_test;
let $MYSQLD_DATADIR= `select @@datadir`;
--echo
--echo chmod 000 mysql_test/t1.frm
--chmod 0000 $MYSQLD_DATADIR/mysql_test/t1.frm
--echo
--error ER_DB_DROP_RMDIR
DROP DATABASE mysql_test;
--echo
SELECT DATABASE();
--echo
--echo rm mysql_test/t1.MYD mysql_test/t1.MYI
--exec rm $MYSQLD_DATADIR/mysql_test/t1.MYD
--exec rm $MYSQLD_DATADIR/mysql_test/t1.MYI
--echo
DROP DATABASE mysql_test;
--echo
use test;
--echo
--echo # -- End of Bug#26704.
###########################################################################