In any case foreign keys referencing table ALTERed play important role here, as assertion happens in the following code:
2666 /**********************************************************************//**
2667 Looks for the foreign constraint from the foreign and referenced lists
2668 of a table.
2669 @return foreign constraint */
2670 static
2671 dict_foreign_t*
2672 dict_foreign_find(
2673 /*==============*/
2674 dict_table_t* table, /*!< in: table object */
2675 const char* id) /*!< in: foreign constraint id */
2676 {
...
2695 if (table->referenced_rbt != NULL) {
2696 ut_a(UT_LIST_GET_LEN(table->referenced_list)
2697 == rbt_size(table->referenced_rbt));
2698 node = rbt_lookup(table->referenced_rbt, id);
...
So, can you, please, check if the table is referenced by foreign keys from some other tables, and if it is (as I assume), share SHOW CREATE TABLE output (edited if needed) for them?
In any case foreign keys referencing table ALTERed play important role here, as assertion happens in the following code:
2666 /****** ******* ******* ******* ******* ******* ******* ******* ******* ******* *//** >referenced_ rbt != NULL) { LIST_GET_ LEN(table- >referenced_ list) table-> referenced_ rbt)); table-> referenced_ rbt, id);
2667 Looks for the foreign constraint from the foreign and referenced lists
2668 of a table.
2669 @return foreign constraint */
2670 static
2671 dict_foreign_t*
2672 dict_foreign_find(
2673 /*==============*/
2674 dict_table_t* table, /*!< in: table object */
2675 const char* id) /*!< in: foreign constraint id */
2676 {
...
2695 if (table-
2696 ut_a(UT_
2697 == rbt_size(
2698 node = rbt_lookup(
...
So, can you, please, check if the table is referenced by foreign keys from some other tables, and if it is (as I assume), share SHOW CREATE TABLE output (edited if needed) for them?