diff options
author | Oleksandr Byelkin <sanja@mariadb.com> | 2023-02-01 16:29:16 +0100 |
---|---|---|
committer | Oleksandr Byelkin <sanja@mariadb.com> | 2023-02-01 16:29:16 +0100 |
commit | bc656c4fa54c12ceabd857e8ae134f8979d82944 (patch) | |
tree | d3ed29ed2b993d9ccd390ea2438153bf58d79758 /storage/innobase | |
parent | b923b80cfd8628ef973019bf3dba76dda8d940c4 (diff) | |
parent | 4c79e15cc3716f69c044d4287ad2160da8101cdc (diff) | |
download | mariadb-git-bc656c4fa54c12ceabd857e8ae134f8979d82944.tar.gz |
Merge branch '10.6' into 10.7mariadb-10.7.810.7
Diffstat (limited to 'storage/innobase')
-rw-r--r-- | storage/innobase/btr/btr0cur.cc | 1 | ||||
-rw-r--r-- | storage/innobase/mtr/mtr0mtr.cc | 13 |
2 files changed, 14 insertions, 0 deletions
diff --git a/storage/innobase/btr/btr0cur.cc b/storage/innobase/btr/btr0cur.cc index 67b8a68930a..ec1b72244b4 100644 --- a/storage/innobase/btr/btr0cur.cc +++ b/storage/innobase/btr/btr0cur.cc @@ -1890,6 +1890,7 @@ dberr_t btr_cur_t::open_leaf(bool first, dict_index_t *index, ut_ad(root_leaf_rw_latch != RW_NO_LATCH); upper_rw_latch= root_leaf_rw_latch; mtr->rollback_to_savepoint(savepoint); + height= ULINT_UNDEFINED; continue; } else diff --git a/storage/innobase/mtr/mtr0mtr.cc b/storage/innobase/mtr/mtr0mtr.cc index 83a82f4ce97..94c73ccb970 100644 --- a/storage/innobase/mtr/mtr0mtr.cc +++ b/storage/innobase/mtr/mtr0mtr.cc @@ -210,7 +210,20 @@ void mtr_t::commit() srv_stats.log_write_requests.inc(); } else + { + if (m_freed_pages) + { + ut_ad(!m_freed_pages->empty()); + ut_ad(m_freed_space == fil_system.temp_space); + ut_ad(!is_trim_pages()); + for (const auto &range : *m_freed_pages) + m_freed_space->add_free_range(range); + delete m_freed_pages; + m_freed_pages= nullptr; + m_freed_space= nullptr; + } release(); + } release_resources(); } |