Skip to content

Values cannot be edited in SYSTEM VERSIONING tables with INVISIBLE timestamps #14515

@darkain

Description

@darkain

Reference: https://mariadb.com/kb/en/library/system-versioned-tables/
Reference: https://mariadb.com/kb/en/library/invisible-columns/

Steps to reproduce

1a. Create a table with SYSTEM VERSIONING without manually specifying the TIMESTAMP columns.
1b. Create a table with SYSTEM VERSIONING, set the ts and te columns to INVISIBLE, and add a PRIMARY KEY to any other column
2. Browse the table in phpMyAdmin
3. phpMyAdmin says: "Current selection does not contain a unique column. Grid edit, checkbox, Edit, Copy and Delete features are not available."

Expected behaviour

Normal browsing and editing behavior

Actual behaviour

"Current selection does not contain a unique column. Grid edit, checkbox, Edit, Copy and Delete features are not available."

phpMyAdmin identifies that the primary key is adjusted to have two columns (the one specified, and the te GENERATED column). With te set to INVISIBLE, when doing a SELECT * on the table, the column does not show up in the results. With SYSTEM VERSIONING, te is a read-only GENERATED column and should not be used for UPDATE or DELETE. These queries are fully deterministic using just the initially specified PRIMARY KEY column without the generated te column.

Server configuration

Operating system: Debian Stretch 9.5

Web server: Apache 2.4.25-3+deb9u5

Database: 10.3.8-MariaDB-1:10.3.8+maria~stretch-log - mariadb.org binary distribution

PHP version: 7.0.30-0+deb9u1

phpMyAdmin version: 4.8.2

Client configuration

Browser: Opera 54

Operating system: Windows 10 1803

Metadata

Metadata

Labels

BugA problem or regression with an existing featurehas-prAn issue that has a pull request pending that may fix this issue. The pull request may be incomplete

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions