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

system versioning by trx id doesn't work with partitioning

    XMLWordPrintable

Details

    Description

      Creating a system-versioned table with row version by trx id works as described in the KB. However when I add partitions to separate current and historic data, I get an error.

      The CREATE TABLE statement:

      CREATE TABLE sbtest1 (
      id INTEGER UNSIGNED NOT NULL AUTO_INCREMENT, 
      k INTEGER UNSIGNED DEFAULT '0' NOT NULL,
      c CHAR(120) DEFAULT '' NOT NULL,
      pad CHAR(60) DEFAULT '' NOT NULL,
      start_trxid BIGINT UNSIGNED GENERATED ALWAYS AS ROW START,
      end_trxid BIGINT UNSIGNED GENERATED ALWAYS AS ROW END,
      PERIOD FOR SYSTEM_TIME(start_trxid, end_trxid),
      PRIMARY KEY (id),
      INDEX k_ (k)
      ) ENGINE=InnoDB WITH SYSTEM VERSIONING PARTITION BY SYSTEM_TIME (
        PARTITION p_hist HISTORY,
        PARTITION p_cur CURRENT
      )
      

      and the error message:

      ERROR 4110 (HY000): `start_trxid` must be of type TIMESTAMP(6) 
      for system-versioned table `sbtest1`
      

      If partitioning isn't supposed to work with trx ids, this should be documented.

      Attachments

        Issue Links

          Activity

            People

              serg Sergei Golubchik
              axel Axel Schwenke
              Votes:
              0 Vote for this issue
              Watchers:
              5 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.