Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Fixed
-
5.5.34
-
None
-
None
Description
3 threads required to reproduce this deadlock:
thread1: mysql_change_user() (or connects/disconnects)
thread2: INSTALL PLUGIN
thread3: SHOW VARIABLES
Easily repeatable with mtr test case:
delimiter |;
|
CREATE PROCEDURE p_install(x INT) |
BEGIN
|
DECLARE CONTINUE HANDLER FOR 1126 BEGIN END; |
WHILE x DO
|
SET x= x - 1; |
INSTALL PLUGIN no_such_plugin SONAME 'no_such_object'; |
END WHILE; |
END| |
|
CREATE PROCEDURE p_show_vars(x INT) |
WHILE x DO
|
SET x= x - 1; |
SHOW VARIABLES;
|
END WHILE| |
delimiter ;|
|
|
connect(con1, localhost, root,,); |
connect(con2, localhost, root,,); |
|
connection con1; |
--send CALL p_install(100);
|
|
connection con2; |
--send CALL p_show_vars(100);
|
|
connection default; |
|
disable_result_log;
|
let $i= 100;
|
while ($i)
|
{
|
change_user;
|
dec $i; |
}
|
|
connection con1; |
reap;
|
connection con2; |
reap;
|
connection default; |
enable_result_log;
|
|
disconnect con1;
|
disconnect con2;
|
DROP PROCEDURE p_install; |
DROP PROCEDURE p_show_vars; |
Attachments
Issue Links
- is part of
-
MDEV-5089 possible deadlocks between rwlocks and mutexes
-
- Closed
-
- links to
Activity
Fix Version/s | 5.5.35 [ 14000 ] | |
Fix Version/s | 5.5.34 [ 13700 ] |
Assignee | Sergey Vojtovich [ svoj ] | Sergei Golubchik [ serg ] |
Remote Link | This issue links to "Bug #71236 Deadlock between mysql_change_user(), SHOW VARIABLES and INSTALL PLUGIN (Web Link)" [ 14501 ] |
Assignee | Sergei Golubchik [ serg ] | Sergey Vojtovich [ svoj ] |
Assignee | Sergey Vojtovich [ svoj ] | Sergei Golubchik [ serg ] |
Assignee | Sergei Golubchik [ serg ] | Sergey Vojtovich [ svoj ] |
Resolution | Fixed [ 1 ] | |
Status | Open [ 1 ] | Closed [ 6 ] |
Workflow | defaullt [ 30305 ] | MariaDB v2 [ 42852 ] |
Workflow | MariaDB v2 [ 42852 ] | MariaDB v3 [ 62552 ] |
Workflow | MariaDB v3 [ 62552 ] | MariaDB v4 [ 147265 ] |