]> git-server-git.apps.pok.os.sepia.ceph.com Git - ceph.git/commitdiff
crimson/os/seastore/journal: fix get_journal_seq
authorSamuel Just <sjust@redhat.com>
Thu, 17 Sep 2020 22:28:06 +0000 (15:28 -0700)
committerSamuel Just <sjust@redhat.com>
Tue, 20 Oct 2020 19:27:08 +0000 (12:27 -0700)
current_journal_segment_seq was misleading -- it's actually the value
for the next one.  Fix naming and update get_journal_seq.

Signed-off-by: Samuel Just <sjust@redhat.com>
src/crimson/os/seastore/journal.cc
src/crimson/os/seastore/journal.h

index ac910e58ad23d5c1f4cb16b89f269756fd425191..95aad57d67fe468b38b41647def1a07ff4c88fc4 100644 (file)
@@ -47,7 +47,7 @@ Journal::initialize_segment(Segment &segment)
   // write out header
   ceph_assert(segment.get_write_ptr() == 0);
   bufferlist bl;
-  segment_seq_t seq = current_journal_segment_seq++;
+  segment_seq_t seq = next_journal_segment_seq++;
   auto header = segment_header_t{
     seq,
     segment.get_segment_id(),
@@ -250,7 +250,7 @@ Journal::find_replay_segments_fut Journal::find_replay_segments()
                rt.second.journal_segment_seq;
            });
 
-         current_journal_segment_seq =
+         next_journal_segment_seq =
            segments.rbegin()->second.journal_segment_seq + 1;
          std::for_each(
            segments.begin(),
index 4dcb1ca6eebc7c53a11cf6801db22d8657253328..805d1f408bc76221ce7e481e8c6fa2bb032c2d34 100644 (file)
@@ -220,15 +220,13 @@ private:
   JournalSegmentProvider *segment_provider = nullptr;
   SegmentManager &segment_manager;
 
-  segment_seq_t current_journal_segment_seq = 0;
+  segment_seq_t next_journal_segment_seq = 0;
 
   SegmentRef current_journal_segment;
   segment_off_t written_to = 0;
 
-  segment_id_t next_journal_segment_seq = NULL_SEG_ID;
-
   journal_seq_t get_journal_seq(paddr_t addr) {
-    return journal_seq_t{current_journal_segment_seq, addr};
+    return journal_seq_t{next_journal_segment_seq-1, addr};
   }
 
   /// prepare segment for writes, writes out segment header