-
Annamalai Gurusami authored
IN DICT0STATS.CC 3049 Problem: When the information schema table information_schema.innodb_cmp_per_index is queried, an in-memory heap table is dynamically created and required data is populated. The data is collected from the dictionary and populated in the heap table. When the heap table becomes larger then it is converted to an on-disk InnoDB intrinsic temporary table. When the information is collected from data dictionary and populated in the in-memory heap table the dict_sys->mutex is taken. This mutex will be released when the heap table is completely populated. When the transition happens from in-memory heap table to on-disk InnoDB intrinsic temporary table, the dict_sys->mutex is being held. So when the InnoDB intrinsic temporary table is created the dict_sys->mutex is being held. This causes the assert. Solution: Before creating the InnoDB intrinsic temporary table release the dict_sys->mutex. Reacquire the dict_sys->mutex after creating the InnoDB intrinsic temporary table. rb#11106 approved by Bin Su and Marc Alff.
Annamalai Gurusami authoredIN DICT0STATS.CC 3049 Problem: When the information schema table information_schema.innodb_cmp_per_index is queried, an in-memory heap table is dynamically created and required data is populated. The data is collected from the dictionary and populated in the heap table. When the heap table becomes larger then it is converted to an on-disk InnoDB intrinsic temporary table. When the information is collected from data dictionary and populated in the in-memory heap table the dict_sys->mutex is taken. This mutex will be released when the heap table is completely populated. When the transition happens from in-memory heap table to on-disk InnoDB intrinsic temporary table, the dict_sys->mutex is being held. So when the InnoDB intrinsic temporary table is created the dict_sys->mutex is being held. This causes the assert. Solution: Before creating the InnoDB intrinsic temporary table release the dict_sys->mutex. Reacquire the dict_sys->mutex after creating the InnoDB intrinsic temporary table. rb#11106 approved by Bin Su and Marc Alff.
Loading