]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
Journal: pass the sequence number to commit_start
authorSamuel Just <sam.just@inktank.com>
Tue, 9 Apr 2013 21:18:51 +0000 (14:18 -0700)
committerSamuel Just <sam.just@inktank.com>
Wed, 10 Apr 2013 19:47:23 +0000 (12:47 -0700)
A subsequent patch will need to see the committing seq.

Signed-off-by: Samuel Just <sam.just@inktank.com>
src/os/FileJournal.cc
src/os/FileJournal.h
src/os/Journal.h
src/os/JournalingObjectStore.cc

index 29139c12bca9065cda7e1d2d312e24d2b0af898c..8986490e60076aab01986bff2c875c1dfbbccb31 100644 (file)
@@ -1480,7 +1480,7 @@ void FileJournal::pop_write()
   writeq.pop_front();
 }
 
-void FileJournal::commit_start()
+void FileJournal::commit_start(uint64_t seq)
 {
   dout(10) << "commit_start" << dendl;
 
index 0e826fb4940b654c1b51f9fe203b6e5dda58b393..38e32324dcaec9d79cdb7a9a8bcfff68d9bf0200 100644 (file)
@@ -403,7 +403,7 @@ private:
   void make_writeable();
 
   // writes
-  void commit_start();
+  void commit_start(uint64_t seq);
   void committed_thru(uint64_t seq);
   bool should_commit_now() {
     return full_state != FULL_NOTFULL;
index 8241edc783d8a8f9c53168c8f0d93586c0f5ab0f..1d413bb4c5311cd228a8b447f383f84990987462 100644 (file)
@@ -60,7 +60,7 @@ public:
   virtual void submit_entry(uint64_t seq, bufferlist& e, int alignment,
                            Context *oncommit,
                            TrackedOpRef osd_op = TrackedOpRef()) = 0;
-  virtual void commit_start() = 0;
+  virtual void commit_start(uint64_t seq) = 0;
   virtual void committed_thru(uint64_t seq) = 0;
 
   /// Read next journal entry - asserts on invalid journal
index e65f010443fbc5e14fcd03f51b856a6978caab7a..e662580ac42bf3270a6c19d1cd50fab6bcbadade 100644 (file)
@@ -177,6 +177,7 @@ bool JournalingObjectStore::ApplyManager::commit_start()
 {
   bool ret = false;
 
+  uint64_t _committing_seq = 0;
   {
     Mutex::Locker l(apply_lock);
     dout(10) << "commit_start max_applied_seq " << max_applied_seq
@@ -198,7 +199,7 @@ bool JournalingObjectStore::ApplyManager::commit_start()
        goto out;
       }
 
-      committing_seq = max_applied_seq;
+      _committing_seq = committing_seq = max_applied_seq;
 
       dout(10) << "commit_start committing " << committing_seq
               << ", still blocked" << dendl;
@@ -208,7 +209,7 @@ bool JournalingObjectStore::ApplyManager::commit_start()
 
  out:
   if (journal)
-    journal->commit_start();  // tell the journal too
+    journal->commit_start(_committing_seq);  // tell the journal too
   return ret;
 }