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

Deadlock between mysql_change_user(), SHOW VARIABLES and INSTALL PLUGIN

Details

    • Bug
    • Status: Closed (View Workflow)
    • Major
    • Resolution: Fixed
    • 5.5.34
    • 5.5.35
    • 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

          Activity

            The MTR testcase fails the MySQL 5.6.15 too. Has this been reported to Oracle? If not, would you mind me reporting it with your testcase?

            laurynas Laurynas Biveinis added a comment - The MTR testcase fails the MySQL 5.6.15 too. Has this been reported to Oracle? If not, would you mind me reporting it with your testcase?
            svoj Sergey Vojtovich added a comment - - edited

            Laurynas, it hasn't been reported to Oracle yet. I'd appreciate if you could report it to Oracle.

            svoj Sergey Vojtovich added a comment - - edited Laurynas, it hasn't been reported to Oracle yet. I'd appreciate if you could report it to Oracle.

            Sergei, please review fix for this bug.

            svoj Sergey Vojtovich added a comment - Sergei, please review fix for this bug.
            laurynas Laurynas Biveinis added a comment - http://bugs.mysql.com/bug.php?id=71236

            Sergei, please review updated patch.

            svoj Sergey Vojtovich added a comment - Sergei, please review updated patch.

            Fixed in 5.5.35, revno: 4051, revision-id: svoj@mariadb.org-20140128071243-807nozcys0r84mxv

            svoj Sergey Vojtovich added a comment - Fixed in 5.5.35, revno: 4051, revision-id: svoj@mariadb.org-20140128071243-807nozcys0r84mxv
            dbart Daniel Bartholomew added a comment - http://bazaar.launchpad.net/~maria-captains/maria/5.5/revision/4051

            People

              svoj Sergey Vojtovich
              svoj Sergey Vojtovich
              Votes:
              1 Vote for this issue
              Watchers:
              4 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.