summaryrefslogtreecommitdiff
path: root/mysql-test/r/partition_grant.result
diff options
context:
space:
mode:
authorunknown <jimw@mysql.com>2006-03-07 12:42:23 -0800
committerunknown <jimw@mysql.com>2006-03-07 12:42:23 -0800
commit870157e9feebfa91c8a2859fd0a730c1802856d1 (patch)
treee298a861dd86209d4f4f8558a91f545e13dc3807 /mysql-test/r/partition_grant.result
parent29c66eea2729b0c7e8786940695967e6920aa392 (diff)
downloadmariadb-git-870157e9feebfa91c8a2859fd0a730c1802856d1.tar.gz
Bug #17139: Partitions: unprivileged user can effectively drop table
Now the DROP privilege is also required on a table in order to be able to drop a partition from the table using ALTER TABLE. sql/sql_parse.cc: Require DROP privilege in addition to ALTER for dropping a partition mysql-test/r/partition_grant.result: New BitKeeper file ``mysql-test/r/partition_grant.result'' mysql-test/t/partition_grant.test: New BitKeeper file ``mysql-test/t/partition_grant.test''
Diffstat (limited to 'mysql-test/r/partition_grant.result')
-rw-r--r--mysql-test/r/partition_grant.result23
1 files changed, 23 insertions, 0 deletions
diff --git a/mysql-test/r/partition_grant.result b/mysql-test/r/partition_grant.result
new file mode 100644
index 00000000000..da0e00c9858
--- /dev/null
+++ b/mysql-test/r/partition_grant.result
@@ -0,0 +1,23 @@
+drop schema if exists mysqltest_1;
+create schema mysqltest_1;
+use mysqltest_1;
+create table t1 (a int) partition by list (a) (partition p1 values in (1), partition p2 values in (2), partition p3 values in (3));
+insert into t1 values (1),(2);
+grant select,alter on mysqltest_1.* to mysqltest_1@localhost;
+show grants for current_user;
+Grants for mysqltest_1@localhost
+GRANT USAGE ON *.* TO 'mysqltest_1'@'localhost'
+GRANT SELECT, ALTER ON `mysqltest_1`.* TO 'mysqltest_1'@'localhost'
+alter table t1 add b int;
+alter table t1 drop partition p2;
+ERROR 42000: DROP command denied to user 'mysqltest_1'@'localhost' for table 't1'
+grant drop on mysqltest_1.* to mysqltest_1@localhost;
+alter table t1 drop partition p2;
+revoke alter on mysqltest_1.* from mysqltest_1@localhost;
+alter table t1 drop partition p3;
+ERROR 42000: ALTER command denied to user 'mysqltest_1'@'localhost' for table 't1'
+revoke select,alter,drop on mysqltest_1.* from mysqltest_1@localhost;
+drop user mysqltest_1@localhost;
+drop table t1;
+drop schema mysqltest_1;
+End of 5.1 tests