Uploaded image for project: 'MariaDB Server'
  1. MariaDB Server
  2. MDEV-6832

ER_LOCK_WAIT_TIMEOUT on SHOW STATUS

Details

    Description

      Start a node with wsrep provider and wsrep_causal_reads=ON and then execute the following commands :

      MariaDB [test]> show status like 'wsrep_ready';
      +---------------+-------+
      | Variable_name | Value |
      +---------------+-------+
      | wsrep_ready   | ON    |
      +---------------+-------+
      1 row in set (0.64 sec)
       
      MariaDB [test]> set global wsrep_provider="/usr/lib/galera/libgalera_smm.so";
      Query OK, 0 rows affected (2.42 sec)
       
      MariaDB [test]> show status like 'wsrep_ready';
      ERROR 1205 (HY000): Lock wait timeout exceeded; try restarting transaction
       

      Attachments

        Activity

          nirbhay_c Nirbhay Choubey (Inactive) added a comment - http://lists.askmonty.org/pipermail/commits/2014-December/007214.html

          Only one small question, why call mtr.add_suppression("safe_mutex: Found wrong usage of mutex.*"); is needed ? Sounds like a bug.

          R: Jan

          jplindst Jan Lindström (Inactive) added a comment - Only one small question, why call mtr.add_suppression("safe_mutex: Found wrong usage of mutex.*"); is needed ? Sounds like a bug. R: Jan
          nirbhay_c Nirbhay Choubey (Inactive) added a comment - - edited

          Its because in wsrep_cluster_address_update LOCK_global_system_variables is released
          temporarily during closure of client connections.

            /* stop replication is heavy operation, and includes closing all client $
               connections. Closing clients may need to get LOCK_global_system_variables$
               at least in MariaDB.$
          $ 
               Note: releasing LOCK_global_system_variables may cause race condition, if $
               there can be several concurrent clients changing wsrep_provider$
            */$
            mysql_mutex_unlock(&LOCK_global_system_variables);$
            wsrep_stop_replication(thd);$
            mysql_mutex_lock(&LOCK_global_system_variables);$

          I will check further is this is really needed here and remove if not.

          nirbhay_c Nirbhay Choubey (Inactive) added a comment - - edited Its because in wsrep_cluster_address_update LOCK_global_system_variables is released temporarily during closure of client connections. /* stop replication is heavy operation, and includes closing all client $ connections. Closing clients may need to get LOCK_global_system_variables$ at least in MariaDB.$ $ Note: releasing LOCK_global_system_variables may cause race condition, if $ there can be several concurrent clients changing wsrep_provider$ */$ mysql_mutex_unlock(&LOCK_global_system_variables);$ wsrep_stop_replication(thd);$ mysql_mutex_lock(&LOCK_global_system_variables);$ I will check further is this is really needed here and remove if not.
          nirbhay_c Nirbhay Choubey (Inactive) added a comment - http://lists.askmonty.org/pipermail/commits/2014-December/007223.html

          ok to push.

          jplindst Jan Lindström (Inactive) added a comment - ok to push.
          nirbhay_c Nirbhay Choubey (Inactive) added a comment - http://bazaar.launchpad.net/~maria-captains/maria/maria-5.5-galera/revision/3551 http://bazaar.launchpad.net/~maria-captains/maria/maria-10.0-galera/revision/3909

          People

            nirbhay_c Nirbhay Choubey (Inactive)
            nirbhay_c Nirbhay Choubey (Inactive)
            Votes:
            1 Vote for this issue
            Watchers:
            3 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved:

              Git Integration

                Error rendering 'com.xiplink.jira.git.jira_git_plugin:git-issue-webpanel'. Please contact your Jira administrators.