Server stuck in INTERNAL DDL LOG RECOVERY IN PROGRESS
I have MySQL 5.6.21 on my laptop running Windows 8.1 and it is doing nothing. It still has that state. Please keep in mind that this state exists in the performance schema, in the table threads, in the column PROCESSLIST_INFO. 

Please note the MySQL Documentation on PERFORMANCE_SCHEMA.THREADS.PROCESSLIST_INFO


  The statement the thread is executing, or NULL if it is not executing any statement. The statement might be the one sent to the server, or an innermost statement if the statement executes other statements. For example, if a CALL statement executes a stored procedure that is executing a SELECT statement, the PROCESSLIST_INFO value shows the SELECT statement.


There is still an active bug report for MySQL 5.6.20, 5.6.22, 5.7.6 on this. The performance schema is enabled by default in MySQL 5.6. Therefore, the only solution, at this time, would be to disable the performance schema. You would have look for future releases to see if this has been resolved.

Personally, I would not worry about this. It seems to behave like MySQL Replication's I/O and SQL threads. Those threads poll indefinitely. Log recovery of this nature would happen during MySQL startup and should not be polling after MySQL Startup and InnoDB Crash Recovery have completed. If the bug simply left the state unchanged and nothing is going on, you could go on using MySQL as usual.

To verify this, please do the following:

STEP 01 : Look in the error log and make sure


crash recovery had finished
MySQL: ready for connections appears near the bottom


STEP 02 : Log into MySQL, and run this

mysql&gt; select * from information_schema.engines where engine='InnoDB'\G


It should look like this

*************************** 1. row ***************************
      ENGINE: InnoDB
     SUPPORT: DEFAULT
     COMMENT: Supports transactions, row-level locking, and foreign keys
TRANSACTIONS: YES
          XA: YES
  SAVEPOINTS: YES
1 row in set (0.00 sec)