From: Gabriel BenHanokh Date: Mon, 18 Oct 2021 17:19:24 +0000 (+0300) Subject: bug-fix close db when umount failed to store allocation file X-Git-Tag: v17.1.0~575^2~2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=35b4dd06bf51209909fcdb9f5c4b4fce112aedc7;p=ceph.git bug-fix close db when umount failed to store allocation file Signed-off-by: Gabriel Benhanokh --- diff --git a/src/os/bluestore/BlueStore.cc b/src/os/bluestore/BlueStore.cc index edd563ced55b..e7a8c2b68fdc 100644 --- a/src/os/bluestore/BlueStore.cc +++ b/src/os/bluestore/BlueStore.cc @@ -7280,6 +7280,8 @@ int BlueStore::umount() int ret = store_allocator(shared_alloc.a); if (ret != 0) { derr << __func__ << "::NCB::store_allocator() failed (continue with bitmapFreelistManager)" << dendl; + _close_db_and_around(false); + // should we run fsck ??? return ret; } dout(5) << __func__ << "::NCB::store_allocator() completed successfully" << dendl; @@ -18312,7 +18314,11 @@ int BlueStore::commit_to_real_manager() dout(5) << "Set FreelistManager to Real FM..." << dendl; ceph_assert(!fm->is_null_manager()); freelist_type = "bitmap"; - return commit_freelist_type(db, freelist_type, cct, path); + int ret = commit_freelist_type(db, freelist_type, cct, path); + if (ret == 0) { + + } + return ret; } //================================================================================================================