Summary
Marino does not parse the UNDO TABLESPACE family of DDL statements that manage InnoDB undo logs as first-class tablespaces.
MySQL version
Introduced in MySQL 8.0.14.
Current state in marino
grep -in 'UNDO TABLESPACE\|UndoTablespace' parser/parser.y parser/keywords.go returns no matches.
Example SQL
CREATE UNDO TABLESPACE undo_ts ADD DATAFILE 'undo_ts.ibu';
ALTER UNDO TABLESPACE undo_ts SET INACTIVE;
ALTER UNDO TABLESPACE undo_ts SET ACTIVE;
DROP UNDO TABLESPACE undo_ts;
ENGINE clause is also accepted (deprecated in 8.4 but still parses):
CREATE UNDO TABLESPACE undo_ts ADD DATAFILE 'undo_ts.ibu' ENGINE = INNODB;
Validation
All three statements above run successfully against MySQL 9.2.0 Community.
Notes for the implementer
Summary
Marino does not parse the
UNDO TABLESPACEfamily of DDL statements that manage InnoDB undo logs as first-class tablespaces.MySQL version
Introduced in MySQL 8.0.14.
Current state in marino
grep -in 'UNDO TABLESPACE\|UndoTablespace' parser/parser.y parser/keywords.goreturns no matches.Example SQL
ENGINEclause is also accepted (deprecated in 8.4 but still parses):Validation
All three statements above run successfully against MySQL 9.2.0 Community.
Notes for the implementer
UNDOas a keyword (probably reserved per upstream).CreateUndoTablespaceStmt,AlterUndoTablespaceStmt,DropUndoTablespaceStmtAST nodes.ALTERform takesSET { ACTIVE | INACTIVE }and an optionalENGINE = name.