From: Xuehan Xu Date: Fri, 10 Jun 2022 03:31:31 +0000 (+0800) Subject: crimson/os/seastore/segment_cleaner: fix journal seq leak issue X-Git-Tag: v18.0.0~648^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=7f1b2514baf9599d9cb7bcd6e6644acbab26a5f1;p=ceph.git crimson/os/seastore/segment_cleaner: fix journal seq leak issue Signed-off-by: Xuehan Xu --- diff --git a/src/crimson/os/seastore/segment_cleaner.cc b/src/crimson/os/seastore/segment_cleaner.cc index c553f58d298a..a3c3d6bb04bd 100644 --- a/src/crimson/os/seastore/segment_cleaner.cc +++ b/src/crimson/os/seastore/segment_cleaner.cc @@ -948,7 +948,8 @@ SegmentCleaner::gc_reclaim_space_ret SegmentCleaner::gc_reclaim_space() return _retrieve_live_extents( t, std::move(backrefs), extents); }).si_then([this, &seq, &t](auto nseq) { - if (nseq != JOURNAL_SEQ_NULL && nseq > seq) + if (nseq != JOURNAL_SEQ_NULL && + (nseq > seq || seq == JOURNAL_SEQ_NULL)) seq = nseq; auto fut = BackrefManager::merge_cached_backrefs_iertr::now(); if (seq != JOURNAL_SEQ_NULL) {