]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
KeyValueStore: Avoid extra lookup for map
authorHaomai Wang <haomaiwang@gmail.com>
Tue, 26 May 2015 04:34:08 +0000 (12:34 +0800)
committerHaomai Wang <haomaiwang@gmail.com>
Tue, 26 May 2015 04:34:08 +0000 (12:34 +0800)
Signed-off-by: Haomai Wang <haomaiwang@gmail.com>
src/os/KeyValueStore.cc

index 02303a9082848bc2e1b2c08e0bcbb422b7d7a018..1204a692c7cee549fb7f1191305a0115d5e40626 100644 (file)
@@ -376,9 +376,10 @@ void KeyValueStore::BufferTransaction::set_buffer_keys(
   store->backend->set_keys(strip_header->header, prefix, values, t);
 
   uniq_id uid = make_pair(strip_header->cid, strip_header->oid);
+  map<pair<string, string>, bufferlist> &uid_buffers = buffers[uid];
   for (map<string, bufferlist>::iterator iter = values.begin();
        iter != values.end(); ++iter) {
-    buffers[uid][make_pair(prefix, iter->first)].swap(iter->second);
+    uid_buffers[make_pair(prefix, iter->first)].swap(iter->second);
   }
 }