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

MyISAM/Aria: Adding/removing non-materialized virtual column triggers table recreation

    Details

    • Type: Bug
    • Status: Open
    • Priority: Minor
    • Resolution: Unresolved
    • Affects Version/s: 5.5.37, 10.0.11, 10.1.0
    • Fix Version/s: 10.1
    • Component/s: None
    • Labels:
      None

      Description

      This is a split from MDEV-6103:
      MyISAM (and most probably Aria) reserves extra bits for virtual columns (NULL flag) in a physical record (the one that is written to disk). There should be no good reason to do so.

      E.g.:
      create table t1 (b int, d int); # Uses 2nd and 3rd bits for NULL flags
      create table t2 (a int as (-b), b int, c int as (-b), d int); # Uses 3rd and 5th bits for NULL flags

      All in all it means physical record format changes when adding/dropping virtual columns and just relaxing table comparison function is not enough to fix this bug.

      See test case for MDEV-6103 in vcol.vcol_non_stored_columns_myisam which confirms reported behavior.

        Gliffy Diagrams

          Attachments

            Issue Links

              Activity

              There are no comments yet on this issue.

                People

                • Assignee:
                  Unassigned
                  Reporter:
                  svoj Sergey Vojtovich
                • Votes:
                  0 Vote for this issue
                  Watchers:
                  3 Start watching this issue

                  Dates

                  • Created:
                    Updated: