From 66b7b920cf5a0a9c71212573ef47fb2c7ea9b5ff Mon Sep 17 00:00:00 2001 From: =?utf8?q?Piotr=20Da=C5=82ek?= Date: Fri, 23 Oct 2015 15:46:20 +0200 Subject: [PATCH] mon/MonitorDBStore: use single-key LevelDB::get() method MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Make MonitorDBStore use single-key ::get() method for some performance increase in heavy K/V workloads. Signed-off-by: Piotr Dałek --- src/mon/MonitorDBStore.h | 12 +++++------- 1 file changed, 5 insertions(+), 7 deletions(-) diff --git a/src/mon/MonitorDBStore.h b/src/mon/MonitorDBStore.h index 15558e3da98..b9b0ee54c93 100644 --- a/src/mon/MonitorDBStore.h +++ b/src/mon/MonitorDBStore.h @@ -507,14 +507,12 @@ class MonitorDBStore } int get(const string& prefix, const string& key, bufferlist& bl) { - set k; - k.insert(key); - map out; - - db->get(prefix, k, &out); - if (out.empty()) + + bufferlist outbl; + db->get(prefix, key, &outbl); + if (outbl.length() == 0) return -ENOENT; - bl.append(out[key]); + bl.append(outbl); return 0; } -- 2.47.3