From 5fe8e941dc6e00f2bc1d2858fdb095ac5bc12ae3 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Fri, 25 Mar 2016 10:58:50 -0400 Subject: [PATCH] os/bluestore: avoid temp released interval_map for wal cleanup Signed-off-by: Sage Weil --- src/os/bluestore/BlueStore.cc | 12 ++---------- 1 file changed, 2 insertions(+), 10 deletions(-) diff --git a/src/os/bluestore/BlueStore.cc b/src/os/bluestore/BlueStore.cc index ac99ae83c1d..943efc3ae26 100644 --- a/src/os/bluestore/BlueStore.cc +++ b/src/os/bluestore/BlueStore.cc @@ -3924,7 +3924,6 @@ void BlueStore::_kv_sync_thread() KeyValueDB::Transaction t = db->get_transaction(); // allocations and deallocations - interval_set released; for (std::deque::iterator it = wal_cleaning.begin(); it != wal_cleaning.end(); ++it) { @@ -3933,7 +3932,6 @@ void BlueStore::_kv_sync_thread() dout(20) << __func__ << " txc " << txc << " (post-wal) released " << txc->wal_txn->released << dendl; - released.insert(txc->wal_txn->released); for (interval_set::iterator p = txc->wal_txn->released.begin(); p != txc->wal_txn->released.end(); @@ -3941,17 +3939,11 @@ void BlueStore::_kv_sync_thread() dout(20) << __func__ << " release " << p.get_start() << "~" << p.get_len() << dendl; fm->release(p.get_start(), p.get_len(), t); + if (!g_conf->bluestore_debug_no_reuse_blocks) + alloc->release(p.get_start(), p.get_len()); } } } - for (interval_set::iterator p = released.begin(); - p != released.end(); - ++p) { - dout(20) << __func__ << " release " << p.get_start() - << "~" << p.get_len() << dendl; - if (!g_conf->bluestore_debug_no_reuse_blocks) - alloc->release(p.get_start(), p.get_len()); - } vector bluefs_gift_extents; if (bluefs) { -- 2.47.3