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

Test case from opt_tvc.test fails with statement memory protection

    XMLWordPrintable

Details

    Description

      The following test case from opt_tvc.test fails if the server is built with-DWITH_PROTECT_STATEMENT_MEMROOT:BOOL=ON

      create table t1 (a int, b int);
      insert into t1
      values (1,2), (4,6), (9,7), (1,1), (2,5), (7,8);
      set @@in_predicate_conversion_threshold= 2;
      prepare stmt from "select * from t1 where a in (1,2)";
      execute stmt;
      execute stmt;
      

      The test case fails with the assertion abort that points to statement memory allocation at the second execution in this code of table_value_constr::prepare()

        Type_holder *holders;
        ...
        if (!(holders= new (thd->stmt_arena->mem_root) Type_holder[cnt]) ||
            join_type_handlers_for_tvc(thd, li, holders, cnt) ||
            get_type_attributes_for_tvc(thd, li, holders,
                                                        lists_of_values.elements, cnt))
       

      Attachments

        Issue Links

          Activity

            People

              igor Igor Babaev
              igor Igor Babaev
              Votes:
              0 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.