diff options
author | Marko Mäkelä <marko.makela@mariadb.com> | 2023-05-12 15:14:50 +0300 |
---|---|---|
committer | Marko Mäkelä <marko.makela@mariadb.com> | 2023-05-12 15:14:50 +0300 |
commit | 00353b7bd68277eb32ed8ef56ef97c336c674ad4 (patch) | |
tree | 088f83c84d89982a998c5885a8412c59c10af27e | |
parent | c271057288f71746d1816824f338f2d9c47f67c1 (diff) | |
parent | c9eff1a144ba44846373660a30d342d3f0dc91a5 (diff) | |
download | mariadb-git-bb-10.6-MDEV-31254.tar.gz |
Merge 10.5 into 10.6bb-10.6-MDEV-31254
-rw-r--r-- | storage/innobase/buf/buf0flu.cc | 14 | ||||
-rw-r--r-- | storage/innobase/buf/buf0rea.cc | 3 | ||||
-rw-r--r-- | storage/innobase/include/fil0fil.h | 2 |
3 files changed, 11 insertions, 8 deletions
diff --git a/storage/innobase/buf/buf0flu.cc b/storage/innobase/buf/buf0flu.cc index 73fc2957ebb..68dbaee5e7d 100644 --- a/storage/innobase/buf/buf0flu.cc +++ b/storage/innobase/buf/buf0flu.cc @@ -1005,11 +1005,19 @@ uint32_t fil_space_t::flush_freed(bool writable) mysql_mutex_assert_not_owner(&buf_pool.flush_list_mutex); mysql_mutex_assert_not_owner(&buf_pool.mutex); - freed_range_mutex.lock(); - if (freed_ranges.empty() || log_sys.get_flushed_lsn() < get_last_freed_lsn()) + for (;;) { + freed_range_mutex.lock(); + if (freed_ranges.empty()) + { + freed_range_mutex.unlock(); + return 0; + } + const lsn_t flush_lsn= last_freed_lsn; + if (log_sys.get_flushed_lsn() >= flush_lsn) + break; freed_range_mutex.unlock(); - return 0; + log_write_up_to(flush_lsn, true); } const unsigned physical{physical_size()}; diff --git a/storage/innobase/buf/buf0rea.cc b/storage/innobase/buf/buf0rea.cc index 5b679efe9b6..c2ab50cc674 100644 --- a/storage/innobase/buf/buf0rea.cc +++ b/storage/innobase/buf/buf0rea.cc @@ -265,9 +265,6 @@ buf_read_page_low( buf_page_t* bpage; if (buf_dblwr.is_inside(page_id)) { - ib::error() << "Trying to read doublewrite buffer page " - << page_id; - ut_ad(0); space->release(); return DB_PAGE_CORRUPTED; } diff --git a/storage/innobase/include/fil0fil.h b/storage/innobase/include/fil0fil.h index 165994eef35..3d88e6ad48f 100644 --- a/storage/innobase/include/fil0fil.h +++ b/storage/innobase/include/fil0fil.h @@ -640,8 +640,6 @@ public: /** Close all tablespace files at shutdown */ static void close_all(); - /** @return last_freed_lsn */ - lsn_t get_last_freed_lsn() { return last_freed_lsn; } /** Update last_freed_lsn */ void update_last_freed_lsn(lsn_t lsn) { |