Re: [Maria-developers] [JIRA] (MDEV-12499) ARCHIVE tables still don't show up in I_S.TABLES when storage engine is not loaded

Hi Sergei, (sorry for cross-posting to MariaDB.dev and MariaDB.discuss: I think this interest both audiences.) Sergei Golubchik commented on MDEV-12499:
Thanks for the detailed info above. In this, you write ".frm files are merely a metadata cache", is there any sort of documentation about when .frm files are useful, useless, and might get out of sync ? This probably deserves a page in the KB (and Google does not know much on "mariadb frm file site:mariadb.com"). However, your comment above raises the following question: if "ARCHIVE engine supports table discovery, that is, the engine is always the authoritative source of table metadata", where is this information stored ? I guess that unless the plugin is loaded, this information is not accessible. This causes a chicken and egg problem which MDEV-12499 was trying to solve: how can mysql_upgrade knows if it should add BLACKHOLE and ARCHIVE to the list of plugin to load (see MDEV-11942). Finally, you marked MDEV-12499 as "Won't Fix", do you have another solution for ARCHIVE and MDEV-11942 ? Many thanks, JFG

Hi, Jean-Francois! On Apr 17, Jean-Francois B. Gagne wrote:
Good point, thanks. I've added a paragraph about it to the https://mariadb.com/kb/en/mariadb/table-discovery/ page.
Correct. The information is stored in the engine - for Archive tables, in the .ARZ file - and it is not accessible when the plugin is not loaded.
Finally, you marked MDEV-12499 as "Won't Fix", do you have another solution for ARCHIVE and MDEV-11942 ?
I think it is not an issue in this particular case. This problem will only show up when one created Archive tables and never ever accessed a single one of them before the upgrade. I don't think it's a realistic scenario. Note, that in my tests I simply started "mysql" client and that was enough for .frm files to be created (because mysql client queries table metadata on startup). And it can hardly be called a compatibility issue :) A "broken compatibility" refers to something that worked before the upgrade, but stopped working after. If one never accessed Archive tables before the upgrade, one can still complain that they are not accessible after the upgrade, but one cannot claim it to be a compatibility problem, I think. Regards, Sergei Chief Architect MariaDB and security@mariadb.org
participants (2)
-
Jean-Francois B. Gagne
-
Sergei Golubchik