I think I've found an edge case error message when using the ZeroConf feature and removing the phpMyAdmin configuration storage tables.
I used the Operations tab of a database with the ZeroConf feature to create the tables. Then, after some time, I decided to drop the tables or entire database. I then get an error about the missing tracking table:
SQL query: DocumentationEdit Edit
SELECT MAX(version) FROM `t_dr`.`pma__tracking` WHERE `db_name` = 't_dr' AND `table_name` = 'pma__bookmark, pma__central_columns, pma__column_info, pma__favorite, pma__history, pma__navigationhiding, pma__pdf_pages, pma__recent, pma__relation, pma__savedsearches, pma__table_coords, pma__table_info, pma__table_uiprefs, pma__tracking, pma__userconfig, pma__usergroups, pma__users' AND FIND_IN_SET('DROP TABLE',tracking) > 0
MySQL said: Documentation #1146 - Table 't_dr.pma__tracking' doesn't exist
This is sort of an edge case but I could see a time when a user wishes to remove the configuration storage tables or database and shouldn't get this error. I've thought of two possible solutions but I'm not sure I like either of them: 1) When dropping a database or table, detect if it's part of the configuration storage and then disable the advanced features. 2) When tracking changes, don't track the configuration storage database or tables.
I prefer 2 but I'm not sure about any ramifications of doing so.
Any opinions about this?