Re: [Maria-developers] [Commits] Rev 4066: MDEV-5089 - possible deadlocks between rwlocks and mutexes
Hi, Sergey! On Feb 13, Sergey Vojtovich wrote:
revno: 4066 revision-id: svoj@mariadb.org-20140213074049-70zbqa98y95sfpox parent: sanja@askmonty.org-20140212150705-e1tfabmhjggqws7q committer: Sergey Vojtovich <svoj@mariadb.org> branch nick: 5.5 timestamp: Thu 2014-02-13 11:40:49 +0400 message: MDEV-5089 - possible deadlocks between rwlocks and mutexes
Pre-MDL versions had direct relationship between LOCK_open and LOCK_global_system_variables, e.g.: intern_sys_var_ptr // locks LOCK_global_system_variable mysql_sys_var_char create_options_are_valid ha_innobase::create handler::ha_create ha_create_table rea_create_table mysql_create_table_no_lock // locks LOCK_open mysql_create_table
With MDL this relationship was removed, but mutex order was still recorded. In fact there is indirect relationship between LOCK_open and LOCK_global_system_variables via rwlocks in reverse order.
Removed LOCK_open and LOCK_global_system_variables order recording, instead assert that LOCK_open is never held in intern_sys_var_ptr().
This solves only one of many problems detected with MDEV-5089.
Looks good, thanks! ok to push! Regards, Sergei
participants (1)
-
Sergei Golubchik