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

[Draft] Server crashes in thr_multi_unlock on EXPLAIN SELECT from I_S table with optimizer_use_condition_selectivity > 2

Details

    • Bug
    • Status: Closed (View Workflow)
    • Major
    • Resolution: Cannot Reproduce
    • 10.0.6
    • None
    • None
    • None

    Description

      It might be the same as MDEV-5415 and MDEV-5416, but the stack trace is different again. It needs to be re-checked after MDEV-5415 is fixed.

      Preliminary test case:

      SET optimizer_use_condition_selectivity=3;
      EXPLAIN   SELECT * FROM (INFORMATION_SCHEMA . `INNODB_SYS_FOREIGN` AS table1 RIGHT  JOIN INFORMATION_SCHEMA . `CHARACTER_SETS` AS table2 ON ( table2 . `MAXLEN` = table1 . `ID` ) ) WHERE  ( ( ( ( ( (NOT ( table2 . `MAXLEN` <= 0 OR table1 . `ID` >= table1 . `FOR_NAME`) AND table2 . `MAXLEN` > table1 . `ID`) AND table1 . `TYPE` = 'pd') AND table2 . `DEFAULT_COLLATE_NAME` <= '2005-03-16 18:54:07.006888') AND table1 . `TYPE` > '2004-02-10 22:26:51.061720') AND table2 . `MAXLEN` = table2 . `DESCRIPTION`) AND table2 . `DESCRIPTION` != table1 . `ID`)   LIMIT 2;

      If it's run via MTR, should be run as

      perl ./mtr bug.t1 --mysqld=--plugin-innodb-sys-foreign

      #3  <signal handler called>
      #4  0x0000000000eeced9 in thr_multi_unlock (data=0x7fa6e4c132c8, count=1, unlock_flags=0) at 10.0/mysys/thr_lock.c:1300
      #5  0x00000000009264a8 in mysql_unlock_tables (thd=0x7fa6e7b3d070, sql_lock=0x7fa6e4c132b0, free_lock=true) at 10.0/sql/lock.cc:384
      #6  0x0000000000926520 in mysql_unlock_some_tables (thd=0x7fa6e7b3d070, table=0x7fa6e4dedc88, count=1) at 10.0/sql/lock.cc:400
      #7  0x0000000000699268 in JOIN::optimize_inner (this=0x7fa6e4f3ba30) at 10.0/sql/sql_select.cc:1375
      #8  0x0000000000697dcc in JOIN::optimize (this=0x7fa6e4f3ba30) at 10.0/sql/sql_select.cc:1012
      #9  0x000000000069f9a5 in mysql_select (thd=0x7fa6e7b3d070, rref_pointer_array=0x7fa6e7b41688, tables=0x7fa6e4f55d58, wild_num=1, fields=..., conds=0x7fa6e4f37f68, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2684619524, result=0x7fa6e4f3b370, unit=0x7fa6e7b40d38, select_lex=0x7fa6e7b41418) at 10.0/sql/sql_select.cc:3278
      #10 0x00000000006d1999 in mysql_explain_union (thd=0x7fa6e7b3d070, unit=0x7fa6e7b40d38, result=0x7fa6e4f3b370) at 10.0/sql/sql_select.cc:23545
      #11 0x000000000066b402 in execute_sqlcom_select (thd=0x7fa6e7b3d070, all_tables=0x7fa6e4f55d58) at 10.0/sql/sql_parse.cc:5184
      #12 0x0000000000663ab8 in mysql_execute_command (thd=0x7fa6e7b3d070) at 10.0/sql/sql_parse.cc:2552
      #13 0x000000000066dd78 in mysql_parse (thd=0x7fa6e7b3d070, rawbuf=0x7fa6e4f55088 "EXPLAIN   SELECT * FROM (INFORMATION_SCHEMA . `INNODB_SYS_FOREIGN` AS table1 RIGHT  JOIN INFORMATION_SCHEMA . `CHARACTER_SETS` AS table2 ON ( table2 . `MAXLEN` = table1 . `ID` ) ) WHERE  ( ( ( ( ( (NO"..., length=558, parser_state=0x7fa6ef39b630) at 10.0/sql/sql_parse.cc:6365
      #14 0x0000000000660cba in dispatch_command (command=COM_QUERY, thd=0x7fa6e7b3d070, packet=0x7fa6e6fe2071 "", packet_length=559) at 10.0/sql/sql_parse.cc:1296
      #15 0x000000000066005c in do_command (thd=0x7fa6e7b3d070) at 10.0/sql/sql_parse.cc:993
      #16 0x0000000000777fb9 in do_handle_one_connection (thd_arg=0x7fa6e7b3d070) at 10.0/sql/sql_connect.cc:1379
      #17 0x0000000000777d0c in handle_one_connection (arg=0x7fa6e7b3d070) at 10.0/sql/sql_connect.cc:1293
      #18 0x0000000000a987cd in pfs_spawn_thread (arg=0x7fa6e6e3cdf0) at 10.0/storage/perfschema/pfs.cc:1853
      #19 0x00007fa6ef0e8b50 in start_thread (arg=<optimized out>) at pthread_create.c:304
      #20 0x00007fa6edc37a7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
      #21 0x0000000000000000 in ?? ()

      revision-id: bar@mnogosearch.org-20131206150255-und2j89f85by7imn
      revno: 3915
      branch-nick: 10.0

      Attachments

        Issue Links

          Activity

            elenst Elena Stepanova created issue -
            elenst Elena Stepanova made changes -
            Field Original Value New Value
            elenst Elena Stepanova made changes -
            Summary Server crashes in thr_multi_unlock on EXPLAIN SELECT from I_S table with optimizer_use_condition_selectivity > 2 [Draft] Server crashes in thr_multi_unlock on EXPLAIN SELECT from I_S table with optimizer_use_condition_selectivity > 2
            elenst Elena Stepanova made changes -
            Description It might be the same as MDEV-5415 and MDEV-5416, but the stack trace is different again. It needs to be re-checked after MDEV-5415 is fixed.

            Preliminary test case:
            {code:sql}
            SET optimizer_use_condition_selectivity=3;
            EXPLAIN SELECT * FROM (INFORMATION_SCHEMA . `INNODB_SYS_FOREIGN` AS table1 RIGHT JOIN INFORMATION_SCHEMA . `CHARACTER_SETS` AS table2 ON ( table2 . `MAXLEN` = table1 . `ID` ) ) WHERE ( ( ( ( ( (NOT ( table2 . `MAXLEN` <= 0 OR table1 . `ID` >= table1 . `FOR_NAME`) AND table2 . `MAXLEN` > table1 . `ID`) AND table1 . `TYPE` = 'pd') AND table2 . `DEFAULT_COLLATE_NAME` <= '2005-03-16 18:54:07.006888') AND table1 . `TYPE` > '2004-02-10 22:26:51.061720') AND table2 . `MAXLEN` = table2 . `DESCRIPTION`) AND table2 . `DESCRIPTION` != table1 . `ID`) LIMIT 2;
            {code}

            {noformat}
            #3 <signal handler called>
            #4 0x0000000000eeced9 in thr_multi_unlock (data=0x7fa6e4c132c8, count=1, unlock_flags=0) at 10.0/mysys/thr_lock.c:1300
            #5 0x00000000009264a8 in mysql_unlock_tables (thd=0x7fa6e7b3d070, sql_lock=0x7fa6e4c132b0, free_lock=true) at 10.0/sql/lock.cc:384
            #6 0x0000000000926520 in mysql_unlock_some_tables (thd=0x7fa6e7b3d070, table=0x7fa6e4dedc88, count=1) at 10.0/sql/lock.cc:400
            #7 0x0000000000699268 in JOIN::optimize_inner (this=0x7fa6e4f3ba30) at 10.0/sql/sql_select.cc:1375
            #8 0x0000000000697dcc in JOIN::optimize (this=0x7fa6e4f3ba30) at 10.0/sql/sql_select.cc:1012
            #9 0x000000000069f9a5 in mysql_select (thd=0x7fa6e7b3d070, rref_pointer_array=0x7fa6e7b41688, tables=0x7fa6e4f55d58, wild_num=1, fields=..., conds=0x7fa6e4f37f68, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2684619524, result=0x7fa6e4f3b370, unit=0x7fa6e7b40d38, select_lex=0x7fa6e7b41418) at 10.0/sql/sql_select.cc:3278
            #10 0x00000000006d1999 in mysql_explain_union (thd=0x7fa6e7b3d070, unit=0x7fa6e7b40d38, result=0x7fa6e4f3b370) at 10.0/sql/sql_select.cc:23545
            #11 0x000000000066b402 in execute_sqlcom_select (thd=0x7fa6e7b3d070, all_tables=0x7fa6e4f55d58) at 10.0/sql/sql_parse.cc:5184
            #12 0x0000000000663ab8 in mysql_execute_command (thd=0x7fa6e7b3d070) at 10.0/sql/sql_parse.cc:2552
            #13 0x000000000066dd78 in mysql_parse (thd=0x7fa6e7b3d070, rawbuf=0x7fa6e4f55088 "EXPLAIN SELECT * FROM (INFORMATION_SCHEMA . `INNODB_SYS_FOREIGN` AS table1 RIGHT JOIN INFORMATION_SCHEMA . `CHARACTER_SETS` AS table2 ON ( table2 . `MAXLEN` = table1 . `ID` ) ) WHERE ( ( ( ( ( (NO"..., length=558, parser_state=0x7fa6ef39b630) at 10.0/sql/sql_parse.cc:6365
            #14 0x0000000000660cba in dispatch_command (command=COM_QUERY, thd=0x7fa6e7b3d070, packet=0x7fa6e6fe2071 "", packet_length=559) at 10.0/sql/sql_parse.cc:1296
            #15 0x000000000066005c in do_command (thd=0x7fa6e7b3d070) at 10.0/sql/sql_parse.cc:993
            #16 0x0000000000777fb9 in do_handle_one_connection (thd_arg=0x7fa6e7b3d070) at 10.0/sql/sql_connect.cc:1379
            #17 0x0000000000777d0c in handle_one_connection (arg=0x7fa6e7b3d070) at 10.0/sql/sql_connect.cc:1293
            #18 0x0000000000a987cd in pfs_spawn_thread (arg=0x7fa6e6e3cdf0) at 10.0/storage/perfschema/pfs.cc:1853
            #19 0x00007fa6ef0e8b50 in start_thread (arg=<optimized out>) at pthread_create.c:304
            #20 0x00007fa6edc37a7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
            #21 0x0000000000000000 in ?? ()
            {noformat}

            {noformat}
            revision-id: bar@mnogosearch.org-20131206150255-und2j89f85by7imn
            revno: 3915
            branch-nick: 10.0
            {noformat}

            It might be the same as MDEV-5415 and MDEV-5416, but the stack trace is different again. It needs to be re-checked after MDEV-5415 is fixed.

            Preliminary test case:
            {code:sql}
            SET optimizer_use_condition_selectivity=3;
            EXPLAIN SELECT * FROM (INFORMATION_SCHEMA . `INNODB_SYS_FOREIGN` AS table1 RIGHT JOIN INFORMATION_SCHEMA . `CHARACTER_SETS` AS table2 ON ( table2 . `MAXLEN` = table1 . `ID` ) ) WHERE ( ( ( ( ( (NOT ( table2 . `MAXLEN` <= 0 OR table1 . `ID` >= table1 . `FOR_NAME`) AND table2 . `MAXLEN` > table1 . `ID`) AND table1 . `TYPE` = 'pd') AND table2 . `DEFAULT_COLLATE_NAME` <= '2005-03-16 18:54:07.006888') AND table1 . `TYPE` > '2004-02-10 22:26:51.061720') AND table2 . `MAXLEN` = table2 . `DESCRIPTION`) AND table2 . `DESCRIPTION` != table1 . `ID`) LIMIT 2;
            {code}

            If it's run via MTR, should be run as
            {noformat}
            perl ./mtr bug.t1 --mysqld=--plugin-innodb-sys-foreign
            {noformat}

            {noformat}
            #3 <signal handler called>
            #4 0x0000000000eeced9 in thr_multi_unlock (data=0x7fa6e4c132c8, count=1, unlock_flags=0) at 10.0/mysys/thr_lock.c:1300
            #5 0x00000000009264a8 in mysql_unlock_tables (thd=0x7fa6e7b3d070, sql_lock=0x7fa6e4c132b0, free_lock=true) at 10.0/sql/lock.cc:384
            #6 0x0000000000926520 in mysql_unlock_some_tables (thd=0x7fa6e7b3d070, table=0x7fa6e4dedc88, count=1) at 10.0/sql/lock.cc:400
            #7 0x0000000000699268 in JOIN::optimize_inner (this=0x7fa6e4f3ba30) at 10.0/sql/sql_select.cc:1375
            #8 0x0000000000697dcc in JOIN::optimize (this=0x7fa6e4f3ba30) at 10.0/sql/sql_select.cc:1012
            #9 0x000000000069f9a5 in mysql_select (thd=0x7fa6e7b3d070, rref_pointer_array=0x7fa6e7b41688, tables=0x7fa6e4f55d58, wild_num=1, fields=..., conds=0x7fa6e4f37f68, og_num=0, order=0x0, group=0x0, having=0x0, proc_param=0x0, select_options=2684619524, result=0x7fa6e4f3b370, unit=0x7fa6e7b40d38, select_lex=0x7fa6e7b41418) at 10.0/sql/sql_select.cc:3278
            #10 0x00000000006d1999 in mysql_explain_union (thd=0x7fa6e7b3d070, unit=0x7fa6e7b40d38, result=0x7fa6e4f3b370) at 10.0/sql/sql_select.cc:23545
            #11 0x000000000066b402 in execute_sqlcom_select (thd=0x7fa6e7b3d070, all_tables=0x7fa6e4f55d58) at 10.0/sql/sql_parse.cc:5184
            #12 0x0000000000663ab8 in mysql_execute_command (thd=0x7fa6e7b3d070) at 10.0/sql/sql_parse.cc:2552
            #13 0x000000000066dd78 in mysql_parse (thd=0x7fa6e7b3d070, rawbuf=0x7fa6e4f55088 "EXPLAIN SELECT * FROM (INFORMATION_SCHEMA . `INNODB_SYS_FOREIGN` AS table1 RIGHT JOIN INFORMATION_SCHEMA . `CHARACTER_SETS` AS table2 ON ( table2 . `MAXLEN` = table1 . `ID` ) ) WHERE ( ( ( ( ( (NO"..., length=558, parser_state=0x7fa6ef39b630) at 10.0/sql/sql_parse.cc:6365
            #14 0x0000000000660cba in dispatch_command (command=COM_QUERY, thd=0x7fa6e7b3d070, packet=0x7fa6e6fe2071 "", packet_length=559) at 10.0/sql/sql_parse.cc:1296
            #15 0x000000000066005c in do_command (thd=0x7fa6e7b3d070) at 10.0/sql/sql_parse.cc:993
            #16 0x0000000000777fb9 in do_handle_one_connection (thd_arg=0x7fa6e7b3d070) at 10.0/sql/sql_connect.cc:1379
            #17 0x0000000000777d0c in handle_one_connection (arg=0x7fa6e7b3d070) at 10.0/sql/sql_connect.cc:1293
            #18 0x0000000000a987cd in pfs_spawn_thread (arg=0x7fa6e6e3cdf0) at 10.0/storage/perfschema/pfs.cc:1853
            #19 0x00007fa6ef0e8b50 in start_thread (arg=<optimized out>) at pthread_create.c:304
            #20 0x00007fa6edc37a7d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:112
            #21 0x0000000000000000 in ?? ()
            {noformat}

            {noformat}
            revision-id: bar@mnogosearch.org-20131206150255-und2j89f85by7imn
            revno: 3915
            branch-nick: 10.0
            {noformat}

            Can't reproduce, possibly the included preliminary test case was erroneous.

            elenst Elena Stepanova added a comment - Can't reproduce, possibly the included preliminary test case was erroneous.
            elenst Elena Stepanova made changes -
            Fix Version/s 10.0.8 [ 14200 ]
            Resolution Cannot Reproduce [ 5 ]
            Status Open [ 1 ] Closed [ 6 ]
            serg Sergei Golubchik made changes -
            Workflow defaullt [ 31003 ] MariaDB v2 [ 44757 ]
            ratzpo Rasmus Johansson (Inactive) made changes -
            Workflow MariaDB v2 [ 44757 ] MariaDB v3 [ 64154 ]
            serg Sergei Golubchik made changes -
            Workflow MariaDB v3 [ 64154 ] MariaDB v4 [ 147324 ]

            People

              elenst Elena Stepanova
              elenst Elena Stepanova
              Votes:
              0 Vote for this issue
              Watchers:
              2 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.