Description:
Hi,
In [1], I can read: "As of MySQL 5.7.17, the generic partitioning handler in the MySQL server is deprecated, [...]".
[1]: https://dev.mysql.com/doc/refman/5.7/en/server-options.html#option_mysqld_disable-partitio...
It looks like a check has been added on MySQL startup to check for tables using the deprecated partition engine. This check can be disabled with '--disable-partition-engine-check'.
However, this check might take a very long time see below (almost 20 minutes):
2017-04-06T11:34:51.070461Z 0 [Note] Executing 'SELECT * FROM INFORMATION_SCHEMA.TABLES;' to get a list of tables using the deprecated partition engine. You may use the startup option '--disable-partition-engine-check' to skip this check.
2017-04-06T11:34:51.070478Z 0 [Note] Beginning of list of non-natively partitioned tables
2017-04-06T11:53:41.730694Z 0 [Note] End of list of non-natively partitioned tables
The logs above have been produced on this system:
> SELECT count(*) FROM INFORMATION_SCHEMA.TABLES;
+----------+
| count(*) |
+----------+
| 191061 |
+----------+
1 row in set (0.78 sec)
See suggested fix.
Note that I classified this bug as S2 as delaying MySQL startup can have very bad consequences. It looks to me that this check is not a good reason to delay MySQL startup.
Many thanks,
JFG
How to repeat:
See description.
Suggested fix:
Run the check in a sub thread.
Improve logging so it becomes clean that MySQL is not stuck.

[6 Apr 2017 13:17]
Umesh Shastry

Hello Jean,
Thank you for the report and feedback.
Observed this with 5.7.17 build.
Thanks,
Umesh

Documented fix in the MySQL 5.7.21 changelog as follows:
Checking for tables that used the generic partitioning handler
could cause delays of several minutes when starting the MySQL
Server. To keep this from happening, the
--disable-partition-engine-checks option is now enabled by
default.
Updated description of the option in the Manual as well as Note referring to it in the 5.7 Partitioning chapter.
Closed.