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

Partitioned versioned tables do not accept Trx IDs

    Details

      Description

      Quoting the previous issue, as it still produces the same error:

      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

              • Assignee:
                jacob.moorman Jacob Moorman
                Reporter:
                DanPoult Daniel Poulton
              • Votes:
                0 Vote for this issue
                Watchers:
                3 Start watching this issue

                Dates

                • Created:
                  Updated: