Comment 12 for bug 1415191

Revision history for this message
Sergei Glushchenko (sergei.glushchenko) wrote :

OK. Patch above was pushed to 5.5. Fix for 5.6 was:

origin/mysql-server - [5.6] » git show --pretty=full a61c0774ff02361edea2ce0a011095d122d86dc8
commit a61c0774ff02361edea2ce0a011095d122d86dc8
Author: Thiru <email address hidden>
Commit: Thiru <email address hidden>

    Bug #20144839 AFTER UPDATING TO MYSQL 5.6.22 SERVER CRASHES ON EVERY START ATTEMPT

    Description:

    push_warning_printf function is used to print the warning message
    to the client. So this function should not invoke while recovering
    the server. Moreover current_thd is NULL while starting the server.

    Solution:

    Avoiding the warning to be printed while recovery.

    Reviewed-by: Jimmy Yang <email address hidden>
    RB: 7511

diff --git a/storage/innobase/dict/dict0dict.cc b/storage/innobase/dict/dict0dict.cc
index 8c5b9c4..8045389 100644
--- a/storage/innobase/dict/dict0dict.cc
+++ b/storage/innobase/dict/dict0dict.cc
@@ -2423,10 +2423,10 @@ too_big:
                        dict_mem_index_free(new_index);
                        dict_mem_index_free(index);
                        return(DB_TOO_BIG_RECORD);
- } else {
-
+ } else if (current_thd != NULL) {
+ /* Avoid the warning to be printed
+ during recovery. */
                        ib_warn_row_too_big(table);
-
                }
        }

And it present in both PXB 2.2.11 and MySQL 5.6.24. Apparently it doesn't work in all cases.