]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
os/LevelDBStore:fix bug when compact_on_mount 7645/head
authorXiaoxi Chen <xiaoxi.chen@intel.com>
Thu, 16 Apr 2015 05:42:42 +0000 (13:42 +0800)
committerLoic Dachary <ldachary@redhat.com>
Mon, 15 Feb 2016 04:52:24 +0000 (11:52 +0700)
Initialize the performance counter(l_rocksdb_compact)
before use it in compact().

Signed-off-by: Xiaoxi Chen <xiaoxi.chen@intel.com>
(cherry picked from commit 932d59d084090297c89cfa3ff7df0a952f807bab)

src/os/LevelDBStore.cc

index 454fafb620b17cfb6df076e0c779ad29cae0cdaf..de458d16084623b439a276be42a3c904c9ce8828 100644 (file)
@@ -74,12 +74,6 @@ int LevelDBStore::do_open(ostream &out, bool create_if_missing)
     return -EINVAL;
   }
 
-  if (g_conf->leveldb_compact_on_mount) {
-    derr << "Compacting leveldb store..." << dendl;
-    compact();
-    derr << "Finished compacting leveldb store" << dendl;
-  }
-
   PerfCountersBuilder plb(g_ceph_context, "leveldb", l_leveldb_first, l_leveldb_last);
   plb.add_u64_counter(l_leveldb_gets, "leveldb_get");
   plb.add_u64_counter(l_leveldb_txns, "leveldb_transaction");
@@ -89,6 +83,12 @@ int LevelDBStore::do_open(ostream &out, bool create_if_missing)
   plb.add_u64(l_leveldb_compact_queue_len, "leveldb_compact_queue_len");
   logger = plb.create_perf_counters();
   cct->get_perfcounters_collection()->add(logger);
+
+  if (g_conf->leveldb_compact_on_mount) {
+    derr << "Compacting leveldb store..." << dendl;
+    compact();
+    derr << "Finished compacting leveldb store" << dendl;
+  }
   return 0;
 }