diff options
author | Marko Mäkelä <marko.makela@mariadb.com> | 2022-02-14 08:36:03 +0200 |
---|---|---|
committer | Marko Mäkelä <marko.makela@mariadb.com> | 2022-02-14 08:36:03 +0200 |
commit | 5291f35f9f0103292d0356e10fa2595e8e5e082e (patch) | |
tree | 24a70cd215e6d2da6accd506ffd839e175e3b015 | |
parent | 018519a8b2d40411bc349c1d186fac275f673e39 (diff) | |
parent | 7b891008ceb2f571ce4f5916217acad8abb46464 (diff) | |
download | mariadb-git-5291f35f9f0103292d0356e10fa2595e8e5e082e.tar.gz |
Merge 10.6 into 10.7
-rw-r--r-- | storage/innobase/dict/dict0stats_bg.cc | 5 | ||||
-rw-r--r-- | storage/innobase/log/log0recv.cc | 3 |
2 files changed, 5 insertions, 3 deletions
diff --git a/storage/innobase/dict/dict0stats_bg.cc b/storage/innobase/dict/dict0stats_bg.cc index e035c0688ee..021b702c143 100644 --- a/storage/innobase/dict/dict0stats_bg.cc +++ b/storage/innobase/dict/dict0stats_bg.cc @@ -103,17 +103,18 @@ static void dict_stats_recalc_pool_add(table_id_t id) { ut_ad(!srv_read_only_mode); ut_ad(id); + bool schedule = false; mysql_mutex_lock(&recalc_pool_mutex); const auto begin= recalc_pool.begin(), end= recalc_pool.end(); if (end == std::find_if(begin, end, [&](const recalc &r){return r.id == id;})) { recalc_pool.emplace_back(recalc{id, recalc::IDLE}); + schedule = true; } mysql_mutex_unlock(&recalc_pool_mutex); - - if (begin == end) + if (schedule) dict_stats_schedule_now(); } diff --git a/storage/innobase/log/log0recv.cc b/storage/innobase/log/log0recv.cc index 8af6ab6521d..60934a356e7 100644 --- a/storage/innobase/log/log0recv.cc +++ b/storage/innobase/log/log0recv.cc @@ -907,6 +907,7 @@ bool recv_sys_t::recover_deferred(recv_sys_t::map::iterator &p, node->deferred= true; if (!space->acquire()) goto fail; + fil_names_dirty(space); const bool is_compressed= fil_space_t::is_compressed(flags); #ifdef _WIN32 const bool is_sparse= is_compressed; @@ -4263,7 +4264,6 @@ completed: err = recv_rename_files(); } mysql_mutex_unlock(&recv_sys.mutex); - mysql_mutex_unlock(&log_sys.mutex); recv_lsn_checks_on = true; @@ -4275,6 +4275,7 @@ completed: err = DB_CORRUPTION; } + mysql_mutex_unlock(&log_sys.mutex); return err; } |