Hi, Pavel! On Oct 13, Pavel Ivanov wrote: > > For example, in MariaDB one can use InnoDB > > for system tables too. Always could, even in 5.5, it's not a new > > feature. There is no code that limits system tables to a specific > > storage engine. > > This is not true even in MariaDB 10.2: > https://github.com/MariaDB/server/blob/10.2/storage/innobase/row/row0mysql.cc#L5398. > And that's only the explicit restriction. Even when you remove that > you still need a lot of other code changes to make MariaDB work with > system tables using InnoDB. There are many places assuming that system > tables are not transactional.
That's basically what I said - the server doesn't limit system tables to a specific engine. Every engine can decide for itself. And InnoDB, apparently, doesn't want to create mysql.host, mysql.user, and mysql.db tables. This test: https://github.com/MariaDB/server/blob/5.5/mysql-test/t/plugin_innodb.test verifies that mysql.plugin works when altered to InnoDB This test: https://github.com/MariaDB/server/blob/10.1/mysql-test/suite/innodb/t/system_tables.test verifies that mysql.time_zone_name works when altered to InnoDB This is not a very popular use case, we had no bug reports about mysql.host, mysql.user, and mysql.db in InnoDB. Otherwise this would've been fixed too. Regards, Sergei Chief Architect MariaDB and secur...@mariadb.org _______________________________________________ Mailing list: https://launchpad.net/~maria-discuss Post to : maria-discuss@lists.launchpad.net Unsubscribe : https://launchpad.net/~maria-discuss More help : https://help.launchpad.net/ListHelp