diff --git a/mysql-test/suite/innodb/r/innodb-system-table-view.result b/mysql-test/suite/innodb/r/innodb-system-table-view.result index b8d061d3214..ff6cfd3d458 100644 --- a/mysql-test/suite/innodb/r/innodb-system-table-view.result +++ b/mysql-test/suite/innodb/r/innodb-system-table-view.result @@ -181,3 +181,10 @@ test/parent 1 2 DROP TABLE child; DROP TABLE parent; SET GLOBAL innodb_purge_rseg_truncate_frequency=@save_frequency; +# +# MDEV-29479 I_S.INNODB_SYS_TABLESPACES doesn't have +# temporary tablespace information +# +SELECT SPACE FROM INFORMATION_SCHEMA.INNODB_SYS_TABLESPACES WHERE name like 'innodb_temporary'; +SPACE +4294967294 diff --git a/mysql-test/suite/innodb/t/innodb-system-table-view.test b/mysql-test/suite/innodb/t/innodb-system-table-view.test index 4f5111eafbc..ea620b398e5 100644 --- a/mysql-test/suite/innodb/t/innodb-system-table-view.test +++ b/mysql-test/suite/innodb/t/innodb-system-table-view.test @@ -141,3 +141,9 @@ DROP TABLE child; DROP TABLE parent; SET GLOBAL innodb_purge_rseg_truncate_frequency=@save_frequency; + +--echo # +--echo # MDEV-29479 I_S.INNODB_SYS_TABLESPACES doesn't have +--echo # temporary tablespace information +--echo # +SELECT SPACE FROM INFORMATION_SCHEMA.INNODB_SYS_TABLESPACES WHERE name like 'innodb_temporary'; diff --git a/storage/innobase/handler/i_s.cc b/storage/innobase/handler/i_s.cc index 20297ce1d61..ce25d17b423 100644 --- a/storage/innobase/handler/i_s.cc +++ b/storage/innobase/handler/i_s.cc @@ -6824,6 +6824,11 @@ i_s_sys_tablespaces_fill_table( mutex_exit(&dict_sys->mutex); mem_heap_free(heap); + i_s_dict_fill_sys_tablespaces( + thd, fil_system.temp_space->id, + fil_system.temp_space->name, + fil_system.temp_space->flags, tables->table); + DBUG_RETURN(0); } /*******************************************************************//**