File tree Expand file tree Collapse file tree 3 files changed +11
-10
lines changed
Expand file tree Collapse file tree 3 files changed +11
-10
lines changed Original file line number Diff line number Diff line change @@ -389,7 +389,7 @@ LogSegment* MDLog::_start_new_segment(SegmentBoundary* sb)
389389 return ls;
390390}
391391
392- void MDLog::_submit_entry (LogEvent *le, MDSLogContextBase* c)
392+ LogSegment:: seq_t MDLog::_submit_entry (LogEvent *le, MDSLogContextBase* c)
393393{
394394 dout (20 ) << __func__ << " " << *le << dendl;
395395 ceph_assert (ceph_mutex_is_locked_by_me (mds->mds_lock ));
@@ -436,6 +436,7 @@ void MDLog::_submit_entry(LogEvent *le, MDSLogContextBase* c)
436436 }
437437
438438 unflushed++;
439+ return event_seq;
439440}
440441
441442void MDLog::_segment_upkeep ()
Original file line number Diff line number Diff line change @@ -136,11 +136,12 @@ class MDLog {
136136
137137 void finish_head_waiters ();
138138
139- void submit_entry (LogEvent *e, MDSLogContextBase* c = 0 ) {
139+ LogSegment:: seq_t submit_entry (LogEvent *e, MDSLogContextBase* c = 0 ) {
140140 std::lock_guard l (submit_mutex);
141- _submit_entry (e, c);
141+ auto seq = _submit_entry (e, c);
142142 _segment_upkeep ();
143143 submit_cond.notify_all ();
144+ return seq;
144145 }
145146
146147 void wait_for_safe (Context* c);
@@ -293,7 +294,7 @@ class MDLog {
293294 void try_to_commit_open_file_table (uint64_t last_seq);
294295 LogSegment* _start_new_segment (SegmentBoundary* sb);
295296 void _segment_upkeep ();
296- void _submit_entry (LogEvent* e, MDSLogContextBase* c);
297+ LogSegment:: seq_t _submit_entry (LogEvent* e, MDSLogContextBase* c);
297298
298299 void try_expire (LogSegment *ls, int op_prio);
299300 void _maybe_expired (LogSegment *ls, int op_prio);
Original file line number Diff line number Diff line change @@ -98,8 +98,7 @@ class C_Flush_Journal : public MDSInternalContext {
9898 // I need to seal off the current segment, and then mark all
9999 // previous segments for expiry
100100 auto * sle = mdcache->create_subtree_map ();
101- mdlog->submit_entry (sle);
102- seq = sle->get_seq ();
101+ seq = mdlog->submit_entry (sle);
103102
104103 Context *ctx = new LambdaContext ([this ](int r) {
105104 handle_clear_mdlog (r);
@@ -180,10 +179,6 @@ class C_Flush_Journal : public MDSInternalContext {
180179 handle_write_head (r);
181180 }));
182181 mdlog->trim_expired_segments (ctx);
183-
184- dout (5 ) << __func__ << " : trimming is complete; wait for journal head write. Journal expire_pos/trim_pos is now "
185- << std::hex << mdlog->get_journaler ()->get_expire_pos () << " /"
186- << mdlog->get_journaler ()->get_trimmed_pos () << dendl;
187182 }
188183
189184 void handle_write_head (int r) {
@@ -202,6 +197,10 @@ class C_Flush_Journal : public MDSInternalContext {
202197 */
203198 ceph_assert (ceph_mutex_is_locked_by_me (mds->mds_lock ));
204199 dout (20 ) << __func__ << " : r=" << r << dendl;
200+
201+ dout (5 ) << __func__ << " : trimming is complete; wait for journal head write. Journal expire_pos/trim_pos is now "
202+ << std::hex << mdlog->get_journaler ()->get_expire_pos () << " /"
203+ << mdlog->get_journaler ()->get_trimmed_pos () << dendl;
205204 on_finish->complete (r);
206205 }
207206
You can’t perform that action at this time.
0 commit comments