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

Remove INNOBASE_SHARE::idx_trans_tbl

Details

    Description

      InnoDB internally stores the indexes of a table in SYS_INDEXES, ordered by the internal hidden key dict_index_t::id. Ever since InnoDB started to support ADD INDEX without rebuilding the whole table (first, in the InnoDB Plugin for MySQL 5.1), it became possible for the internal ordering of InnoDB dict_table_t::indexes to differ from the ordering of TABLE::key_info[]. To solve this inconsistency, an additional data structure INNOBASE_SHARE::idx_trans_tbl was added to map SQL key numbers to InnoDB indexes. But, as reported in MDEV-6443, there appear to be some glitches when it comes to updating this mapping.

      We should remove the INNOBASE_SHARE::idx_trans_tbl, and instead change the dict_table_t::indexes to be sorted not by dict_index_t::id but according to the same rules as TABLE::keys[].

      Attachments

        Issue Links

          Activity

            Transition Time In Source Status Execution Times
            Eugene Kosov (Inactive) made transition -
            Open In Progress
            28d 13h 36m 1
            Eugene Kosov (Inactive) made transition -
            In Progress In Review
            6d 20h 55m 1
            Marko Mäkelä made transition -
            In Review Stalled
            1d 21h 7m 1
            Eugene Kosov (Inactive) made transition -
            Stalled In Review
            1d 1h 50m 1
            Marko Mäkelä made transition -
            In Review Closed
            18d 21h 13m 1

            People

              kevg Eugene Kosov (Inactive)
              marko Marko Mäkelä
              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.