Hi, Vicențiu! On Mar 16, Vicențiu Ciorbaru wrote:
I've achieved the desired performance speedup related to MDEV-6714. You can check the preliminary patch on the commits mailing-list. I'll clean up the code and then submit a final version for review. I do however have two concerns:
* By using SHOW TABLES LIKE %s, we performed a case insensitive search to find the table's correct name case. This command takes a long time with a lot of tables. Using an equality operator in I_D speeds it up, but it no longer matches if we have a different case.
Possible solution: Try to search for the table with the provided string via INFORMATION_SCHEMA using the equals operator. If we can not find the table, fall back to a case insensitive search that takes longer.
Okay, good idea. A drawback is that if the table doesn't exist, you'll need a slow search to find it out. But I don't see a solution for this. At least, you could check lower_case_table_names. And if it's not 0, you don't need to do a case insensitive search.
* The I_S.triggers and I_S.tables are available since 5.5 and 5.1 respectively. I suppose it is safe to assume we will have these tables available when running mysqldump. I can code all the changes to fall back to the previous query if the one that uses I_S tables fails.
Right, fallback is fine. Regards, Sergei