From: Venky Shankar Date: Mon, 31 Jul 2023 05:59:24 +0000 (-0400) Subject: mds: remove a bunch of heuristics from MDLog::trim() X-Git-Tag: v19.3.0~120^2~3 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=3c3bc24ca3e58f1b3c225aa275cdd9c320a6dccc;p=ceph.git mds: remove a bunch of heuristics from MDLog::trim() These were probbaly introduced to workaround some sort of resource overusage by the MDS during trimming, but now it looks like they are not really neeeded, especially if we introduce a dedicated thread for log trimming. Signed-off-by: Venky Shankar --- diff --git a/src/mds/MDLog.cc b/src/mds/MDLog.cc index c174428a1f92..2ade813c22f2 100644 --- a/src/mds/MDLog.cc +++ b/src/mds/MDLog.cc @@ -645,11 +645,8 @@ void MDLog::trim(int m) unsigned new_expiring_segments = 0; - unsigned max_expiring_segments = 0; - if (pre_segments_size > 0){ - max_expiring_segments = max_segments/2; + if (pre_segments_size > 0) { ceph_assert(segments.size() >= pre_segments_size); - max_expiring_segments = std::max(max_expiring_segments,segments.size() - pre_segments_size); } map::iterator p = segments.begin(); @@ -685,15 +682,6 @@ void MDLog::trim(int m) break; } - // Do not trim too many segments at once for peak workload. If mds keeps creating N segments each tick, - // the upper bound of 'num_remaining_segments - max_segments' is '2 * N' - if (new_expiring_segments * 2 > num_remaining_segments) - break; - - if (max_expiring_segments > 0 && - expiring_segments.size() >= max_expiring_segments) - break; - // look at first segment LogSegment *ls = p->second; ceph_assert(ls);