]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
osd: avoid txn append in ReplicatedBackend::sub_op_modify
authorSage Weil <sage@redhat.com>
Thu, 22 Jan 2015 02:41:11 +0000 (18:41 -0800)
committerSamuel Just <sjust@redhat.com>
Thu, 16 Apr 2015 19:15:38 +0000 (12:15 -0700)
Signed-off-by: Sage Weil <sage@redhat.com>
src/osd/ReplicatedBackend.cc

index 44614d8e694d7e0d071ad8bbd958c6a7497992a7..19c3ee401be187d9134f38a3d10a2a262ac30f70 100644 (file)
@@ -1203,14 +1203,16 @@ void ReplicatedBackend::sub_op_modify_impl(OpRequestRef op)
 
   op->mark_started();
 
-  rm->localt.append(rm->opt);
-  rm->localt.register_on_commit(
+  rm->opt.register_on_commit(
     parent->bless_context(
       new C_OSD_RepModifyCommit(this, rm)));
   rm->localt.register_on_applied(
     parent->bless_context(
       new C_OSD_RepModifyApply(this, rm)));
-  parent->queue_transaction(&(rm->localt), op);
+  list<ObjectStore::Transaction*> tls;
+  tls.push_back(&(rm->localt));
+  tls.push_back(&(rm->opt));
+  parent->queue_transactions(tls, op);
   // op is cleaned up by oncommit/onapply when both are executed
 }