Uploaded image for project: 'Percona Server'
  1. Percona Server
  2. PS-4197

myrocks needs extra initialization step during .frm opening

    Details

    • Type: Admin & Maintenance Task
    • Status: Done
    • Priority: Medium
    • Resolution: Done
    • Affects Version/s: None
    • Fix Version/s: 5.7.18-14
    • Component/s: MyRocks

      Description

      myrocks handler needs an extra initialization step during .frm opening in sql/table.cc::open_binary_frm

      MyRocks supports HA_PRIMARY_KEY_IN_READ_INDEX, i.e. ability to obtain PK value from an index read only for certain types of keys/key combinations. It does not know if it can support this flag until after the table definition has been parsed from the .frm and the key structures analysed. When used as a partitioned table, there is/was no opportunity for it to evaluate if the flag was supported. This patch adds a secondary handler initialization function that happens after a TABLE_SHARE key and field definitions have been read and parsed and extends the partition handler to forward the call to the underlying storage engine.

      https://github.com/facebook/mysql-5.6/commit/c1f1f0b64eaecd132fc6ec21663faf0510afacaf : Index-only scans do not work for partitioned tables and extended key

      https://blueprints.launchpad.net/percona-server/+spec/myrocks-extra-frm-init-5.6
      https://blueprints.launchpad.net/percona-server/+spec/myrocks-extra-frm-init-5.7

        Smart Checklist

          Attachments

            Activity

              People

              • Assignee:
                george.lorch George Lorch
                Reporter:
                george.lorch George Lorch
              • Votes:
                0 Vote for this issue
                Watchers:
                2 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: