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

innodb_buffer_pool_load_now doesn't work for encrypted spaces

    XMLWordPrintable

Details

    Description

      The following code in buf_load() skips encrypted pages:

                     /* JAN: TODO: As we use background page read below,                                                               
                      if tablespace is encrypted we cant use it. */                   
                      if (!space || dump[i].page_no() >= space->get_size() ||         
                          (space->crypt_data &&                                       
                           space->crypt_data->encryption != FIL_ENCRYPTION_OFF &&     
                           space->crypt_data->type != CRYPT_SCHEME_UNENCRYPTED)) {    
                              continue;                                               
                      }
      

      The bug was checked only for 11.8, but more likely it exists also for all versions.

      Marko's comments about that:

      Maybe it’s based on a misunderstanding? Or working around a bug that I fixed in 10.1 one February or March, can’t remember the year. There originally were lots of race conditions around fil0crypt.cc, especially around DDL operations.

      Actually there were some fixes in 2017 and several more in 2018.

      That code was added as part of the initial import from MySQL 5.7:commit

      2e814d4702d71a04388386a9f591d14a35980bfe
      Author: Jan Lindström <jan.lindstrom@mariadb.com>
      Date:   Fri Aug 12 11:17:45 2016 +0300
       
          Merge InnoDB 5.7 from mysql-5.7.9.
      

      Attachments

        Activity

          People

            thiru Thirunarayanan Balathandayuthapani
            vlad.lesin Vladislav Lesin (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

              Created:
              Updated:

              Git Integration

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