Commit b11c4493 authored by unknown's avatar unknown

Merge kpdesk.mysql.com:/home/thek/Development/cpp/mysql-5.0

into  kpdesk.mysql.com:/home/thek/Development/cpp/mysql-5.0-merge


sql/sql_acl.cc:
  Auto merged
mysql-test/r/grant.result:
  manual merge
mysql-test/t/grant.test:
  manual merge
parents edcf2742 90df35c9
...@@ -1129,6 +1129,12 @@ DROP USER mysqltest_1@localhost; ...@@ -1129,6 +1129,12 @@ DROP USER mysqltest_1@localhost;
DROP DATABASE db27878; DROP DATABASE db27878;
use test; use test;
DROP TABLE t1; DROP TABLE t1;
#
# Bug#33275 Server crash when creating temporary table mysql.user
#
CREATE TEMPORARY TABLE mysql.user (id INT);
FLUSH PRIVILEGES;
DROP TABLE mysql.user;
drop table if exists test; drop table if exists test;
Warnings: Warnings:
Note 1051 Unknown table 'test' Note 1051 Unknown table 'test'
......
...@@ -1153,6 +1153,12 @@ DROP DATABASE db27878; ...@@ -1153,6 +1153,12 @@ DROP DATABASE db27878;
use test; use test;
DROP TABLE t1; DROP TABLE t1;
--echo #
--echo # Bug#33275 Server crash when creating temporary table mysql.user
--echo #
CREATE TEMPORARY TABLE mysql.user (id INT);
FLUSH PRIVILEGES;
DROP TABLE mysql.user;
# #
# Bug #33201 Crash occurs when granting update privilege on one column of a view # Bug #33201 Crash occurs when granting update privilege on one column of a view
# #
......
...@@ -223,7 +223,7 @@ void my_thread_global_end(void) ...@@ -223,7 +223,7 @@ void my_thread_global_end(void)
#endif #endif
} }
static long thread_id=0; static ulong thread_id=0;
/* /*
Allocate thread specific memory for the thread, used by mysys and dbug Allocate thread specific memory for the thread, used by mysys and dbug
......
...@@ -558,6 +558,8 @@ my_bool acl_reload(THD *thd) ...@@ -558,6 +558,8 @@ my_bool acl_reload(THD *thd)
tables[0].next_local= tables[0].next_global= tables+1; tables[0].next_local= tables[0].next_global= tables+1;
tables[1].next_local= tables[1].next_global= tables+2; tables[1].next_local= tables[1].next_global= tables+2;
tables[0].lock_type=tables[1].lock_type=tables[2].lock_type=TL_READ; tables[0].lock_type=tables[1].lock_type=tables[2].lock_type=TL_READ;
tables[0].skip_temporary= tables[1].skip_temporary=
tables[2].skip_temporary= TRUE;
if (simple_open_n_lock_tables(thd, tables)) if (simple_open_n_lock_tables(thd, tables))
{ {
...@@ -3537,7 +3539,8 @@ my_bool grant_reload(THD *thd) ...@@ -3537,7 +3539,8 @@ my_bool grant_reload(THD *thd)
tables[0].next_local= tables[0].next_global= tables+1; tables[0].next_local= tables[0].next_global= tables+1;
tables[1].next_local= tables[1].next_global= tables+2; tables[1].next_local= tables[1].next_global= tables+2;
tables[0].lock_type= tables[1].lock_type= tables[2].lock_type= TL_READ; tables[0].lock_type= tables[1].lock_type= tables[2].lock_type= TL_READ;
tables[0].skip_temporary= tables[1].skip_temporary=
tables[2].skip_temporary= TRUE;
/* /*
To avoid deadlocks we should obtain table locks before To avoid deadlocks we should obtain table locks before
obtaining LOCK_grant rwlock. obtaining LOCK_grant rwlock.
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment