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

BtrBulk is unnecessarily holding dict_index_t::lock

    XMLWordPrintable

Details

    Description

      The BtrBulk class, which was introduced in MySQL 5.7, is by design the exclusive writer to an index. It is therefore unnecessary to acquire the dict_index_t::lock in that code.

      Holding the dict_index_t::lock would unnecessarily block other threads (SQL connections and the InnoDB purge threads) from buffering concurrent modifications to being-created secondary indexes.

      This was addressed in MySQL 5.7.28 with a change that is still unnecessarily acquiring the dict_index_t::lock in some cases:
      Bug #29008298 MYSQLD CRASHES ITSELF WHEN CREATING INDEX

      Attachments

        Issue Links

          Activity

            People

              marko Marko Mäkelä
              marko Marko Mäkelä
              Votes:
              0 Vote for this issue
              Watchers:
              1 Start watching this issue

              Dates

                Created:
                Updated:
                Resolved:

                Time Tracking

                  Estimated:
                  Original Estimate - Not Specified
                  Not Specified
                  Remaining:
                  Remaining Estimate - 0d
                  0d
                  Logged:
                  Time Spent - 0.25d
                  0.25d

                  Git Integration

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