File tree Expand file tree Collapse file tree 2 files changed +9
-5
lines changed
Expand file tree Collapse file tree 2 files changed +9
-5
lines changed Original file line number Diff line number Diff line change @@ -762,17 +762,18 @@ class C_MaybeExpiredSegment : public MDSInternalContext {
762762 * Like MDLog::trim, but instead of trimming to max_segments, trim all but the latest
763763 * segment.
764764 */
765- int MDLog::trim_all ( )
765+ int MDLog::trim_to (SegmentBoundary:: seq_t seq )
766766{
767767 submit_mutex.lock ();
768768
769769 dout (10 ) << __func__ << " : "
770- << segments.size ()
770+ << seq
771+ << " " << segments.size ()
771772 << " /" << expiring_segments.size ()
772773 << " /" << expired_segments.size () << dendl;
773774
774- uint64_t last_seq = 0 ;
775- if (!segments.empty ()) {
775+ uint64_t last_seq = seq ;
776+ if (last_seq == 0 || !segments.empty ()) {
776777 last_seq = get_last_segment_seq ();
777778 try_to_commit_open_file_table (last_seq);
778779 }
Original file line number Diff line number Diff line change @@ -147,7 +147,10 @@ class MDLog {
147147 }
148148
149149 void trim_expired_segments ();
150- int trim_all ();
150+ int trim_all () {
151+ return trim_to (0 );
152+ }
153+ int trim_to (SegmentBoundary::seq_t );
151154
152155 void create (MDSContext *onfinish); // fresh, empty log!
153156 void open (MDSContext *onopen); // append() or replay() to follow!
You can’t perform that action at this time.
0 commit comments