From: Jianpeng Ma Date: Fri, 18 Nov 2016 11:36:44 +0000 (+0800) Subject: kv/RocksDBStore: Don't update rocksdb perf_context if rocksdb_perf disable. X-Git-Tag: v11.1.0~196^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F12064%2Fhead;p=ceph.git kv/RocksDBStore: Don't update rocksdb perf_context if rocksdb_perf disable. Signed-off-by: Jianpeng Ma --- diff --git a/src/kv/RocksDBStore.cc b/src/kv/RocksDBStore.cc index 0ab97cdc7dd..440c1a18b56 100644 --- a/src/kv/RocksDBStore.cc +++ b/src/kv/RocksDBStore.cc @@ -390,25 +390,28 @@ int RocksDBStore::submit_transaction(KeyValueDB::Transaction t) << " Rocksdb transaction: " << rocks_txc.seen << dendl; } utime_t lat = ceph_clock_now(g_ceph_context) - start; - utime_t write_memtable_time; - utime_t write_delay_time; - utime_t write_wal_time; - utime_t write_pre_and_post_process_time; - write_wal_time.set_from_double( - static_cast(rocksdb::perf_context.write_wal_time)/1000000000); - write_memtable_time.set_from_double( - static_cast(rocksdb::perf_context.write_memtable_time)/1000000000); - write_delay_time.set_from_double( - static_cast(rocksdb::perf_context.write_delay_time)/1000000000); - write_pre_and_post_process_time.set_from_double( - static_cast(rocksdb::perf_context.write_pre_and_post_process_time)/1000000000); + + if (g_conf->rocksdb_perf) { + utime_t write_memtable_time; + utime_t write_delay_time; + utime_t write_wal_time; + utime_t write_pre_and_post_process_time; + write_wal_time.set_from_double( + static_cast(rocksdb::perf_context.write_wal_time)/1000000000); + write_memtable_time.set_from_double( + static_cast(rocksdb::perf_context.write_memtable_time)/1000000000); + write_delay_time.set_from_double( + static_cast(rocksdb::perf_context.write_delay_time)/1000000000); + write_pre_and_post_process_time.set_from_double( + static_cast(rocksdb::perf_context.write_pre_and_post_process_time)/1000000000); + logger->tinc(l_rocksdb_write_memtable_time, write_memtable_time); + logger->tinc(l_rocksdb_write_delay_time, write_delay_time); + logger->tinc(l_rocksdb_write_wal_time, write_wal_time); + logger->tinc(l_rocksdb_write_pre_and_post_process_time, write_pre_and_post_process_time); + } logger->inc(l_rocksdb_txns); logger->tinc(l_rocksdb_submit_latency, lat); - logger->tinc(l_rocksdb_write_memtable_time, write_memtable_time); - logger->tinc(l_rocksdb_write_delay_time, write_delay_time); - logger->tinc(l_rocksdb_write_wal_time, write_wal_time); - logger->tinc(l_rocksdb_write_pre_and_post_process_time, write_pre_and_post_process_time); return s.ok() ? 0 : -1; } @@ -441,25 +444,28 @@ int RocksDBStore::submit_transaction_sync(KeyValueDB::Transaction t) << " Rocksdb transaction: " << rocks_txc.seen << dendl; } utime_t lat = ceph_clock_now(g_ceph_context) - start; - utime_t write_memtable_time; - utime_t write_delay_time; - utime_t write_wal_time; - utime_t write_pre_and_post_process_time; - write_wal_time.set_from_double( - static_cast(rocksdb::perf_context.write_wal_time)/1000000000); - write_memtable_time.set_from_double( - static_cast(rocksdb::perf_context.write_memtable_time)/1000000000); - write_delay_time.set_from_double( - static_cast(rocksdb::perf_context.write_delay_time)/1000000000); - write_pre_and_post_process_time.set_from_double( - static_cast(rocksdb::perf_context.write_pre_and_post_process_time)/1000000000); + + if (g_conf->rocksdb_perf) { + utime_t write_memtable_time; + utime_t write_delay_time; + utime_t write_wal_time; + utime_t write_pre_and_post_process_time; + write_wal_time.set_from_double( + static_cast(rocksdb::perf_context.write_wal_time)/1000000000); + write_memtable_time.set_from_double( + static_cast(rocksdb::perf_context.write_memtable_time)/1000000000); + write_delay_time.set_from_double( + static_cast(rocksdb::perf_context.write_delay_time)/1000000000); + write_pre_and_post_process_time.set_from_double( + static_cast(rocksdb::perf_context.write_pre_and_post_process_time)/1000000000); + logger->tinc(l_rocksdb_write_memtable_time, write_memtable_time); + logger->tinc(l_rocksdb_write_delay_time, write_delay_time); + logger->tinc(l_rocksdb_write_wal_time, write_wal_time); + logger->tinc(l_rocksdb_write_pre_and_post_process_time, write_pre_and_post_process_time); + } logger->inc(l_rocksdb_txns_sync); logger->tinc(l_rocksdb_submit_sync_latency, lat); - logger->tinc(l_rocksdb_write_memtable_time, write_memtable_time); - logger->tinc(l_rocksdb_write_delay_time, write_delay_time); - logger->tinc(l_rocksdb_write_wal_time, write_wal_time); - logger->tinc(l_rocksdb_write_pre_and_post_process_time, write_pre_and_post_process_time); return s.ok() ? 0 : -1; }