mirror of
https://github.com/ceph/ceph
synced 2025-03-11 02:39:05 +00:00
tools/ceph_kvstore_tool: do not open rocksdb when repairing it
before this change, the `need_open_db` parameter is passed to the constructor of BlueStore as `min_alloc_size`. and rocksdb will fail to repair because Repairer::Run() also tries to acquire the db lock, and it will fail to do so if the lock file is already acquired by BlueStore::_mount(). Signed-off-by: Kefu Chai <kchai@redhat.com>
This commit is contained in:
parent
eaf8e40980
commit
85c65a58cc
@ -62,9 +62,9 @@ class StoreTool
|
||||
StoreTool(string type, const string &path, bool need_open_db=true) : store_path(path) {
|
||||
if (type == "bluestore-kv") {
|
||||
#ifdef WITH_BLUESTORE
|
||||
auto bluestore = new BlueStore(g_ceph_context, path, need_open_db);
|
||||
auto bluestore = new BlueStore(g_ceph_context, path);
|
||||
KeyValueDB *db_ptr;
|
||||
int r = bluestore->start_kv_only(&db_ptr);
|
||||
int r = bluestore->start_kv_only(&db_ptr, need_open_db);
|
||||
if (r < 0) {
|
||||
exit(1);
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user