]> git.apps.os.sepia.ceph.com Git - ceph.git/commitdiff
PGBackend: allow queue_transaction to specify an op
authorSamuel Just <sam.just@inktank.com>
Fri, 15 Nov 2013 22:34:55 +0000 (14:34 -0800)
committerSamuel Just <sam.just@inktank.com>
Wed, 22 Jan 2014 22:39:15 +0000 (14:39 -0800)
Signed-off-by: Samuel Just <sam.just@inktank.com>
src/osd/PGBackend.h
src/osd/ReplicatedPG.h

index f2c67f113d63aa6684dc534c4165908bc8e5c65f..30804fdbc41dbbdc3e4dedda0d27dd3b5e9a474f 100644 (file)
        GenContext<ThreadPool::TPHandle&> *c) = 0;
 
      virtual void send_message(int to_osd, Message *m) = 0;
-     virtual void queue_transaction(ObjectStore::Transaction *t) = 0;
+     virtual void queue_transaction(
+       ObjectStore::Transaction *t,
+       OpRequestRef op = OpRequestRef()
+       ) = 0;
      virtual epoch_t get_epoch() = 0;
      virtual const vector<int> &get_actingbackfill() = 0;
      virtual std::string gen_dbg_prefix() const = 0;
index 0364827fc0d8efb2568d4d9c4c9f9a8add9dedca..0626008dea0e2c55c81058a2d5a74de9ef194ade 100644 (file)
@@ -282,8 +282,10 @@ public:
   void send_message(int to_osd, Message *m) {
     osd->send_message_osd_cluster(to_osd, m, get_osdmap()->get_epoch());
   }
-  void queue_transaction(ObjectStore::Transaction *t) {
-    osd->store->queue_transaction(osr.get(), t);
+  void queue_transaction(ObjectStore::Transaction *t, OpRequestRef op) {
+    list<ObjectStore::Transaction *> tls;
+    tls.push_back(t);
+    osd->store->queue_transaction(osr.get(), t, 0, 0, 0, op);
   }
   epoch_t get_epoch() {
     return get_osdmap()->get_epoch();