Skip to content

Commit 7632871

Browse files
committed
mds: use LogSegment dump for debugging
Signed-off-by: Patrick Donnelly <[email protected]>
1 parent bd86572 commit 7632871

File tree

1 file changed

+17
-25
lines changed

1 file changed

+17
-25
lines changed

src/mds/MDLog.cc

Lines changed: 17 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -679,17 +679,15 @@ void MDLog::trim(int m)
679679

680680
if (pending_events.count(ls->seq) ||
681681
ls->end > safe_pos) {
682-
dout(5) << "trim segment " << ls->seq << "/" << ls->offset << ", not fully flushed yet, safe "
682+
dout(5) << "trim " << *ls << " is not fully flushed yet: safe "
683683
<< journaler->get_write_safe_pos() << " < end " << ls->end << dendl;
684684
break;
685685
}
686686

687687
if (expiring_segments.count(ls)) {
688-
dout(5) << "trim already expiring segment " << ls->seq << "/" << ls->offset
689-
<< ", " << ls->num_events << " events" << dendl;
688+
dout(5) << "trim already expiring " << *ls << dendl;
690689
} else if (expired_segments.count(ls)) {
691-
dout(5) << "trim already expired segment " << ls->seq << "/" << ls->offset
692-
<< ", " << ls->num_events << " events" << dendl;
690+
dout(5) << "trim already expired " << *ls << dendl;
693691
} else {
694692
ceph_assert(expiring_segments.count(ls) == 0);
695693
new_expiring_segments++;
@@ -753,17 +751,15 @@ int MDLog::trim_all()
753751

754752
// Caller should have flushed journaler before calling this
755753
if (pending_events.count(ls->seq)) {
756-
dout(5) << __func__ << ": segment " << ls->seq << " has pending events" << dendl;
754+
dout(5) << __func__ << ": " << *ls << " has pending events" << dendl;
757755
submit_mutex.unlock();
758756
return -CEPHFS_EAGAIN;
759757
}
760758

761759
if (expiring_segments.count(ls)) {
762-
dout(5) << "trim already expiring segment " << ls->seq << "/" << ls->offset
763-
<< ", " << ls->num_events << " events" << dendl;
760+
dout(5) << "trim already expiring " << *ls << dendl;
764761
} else if (expired_segments.count(ls)) {
765-
dout(5) << "trim already expired segment " << ls->seq << "/" << ls->offset
766-
<< ", " << ls->num_events << " events" << dendl;
762+
dout(5) << "trim already expired " << *ls << dendl;
767763
} else {
768764
ceph_assert(expiring_segments.count(ls) == 0);
769765
expiring_segments.insert(ls);
@@ -790,11 +786,11 @@ void MDLog::try_expire(LogSegment *ls, int op_prio)
790786
ls->try_to_expire(mds, gather_bld, op_prio);
791787

792788
if (gather_bld.has_subs()) {
793-
dout(5) << "try_expire expiring segment " << ls->seq << "/" << ls->offset << dendl;
789+
dout(5) << "try_expire expiring " << *ls << dendl;
794790
gather_bld.set_finisher(new C_MaybeExpiredSegment(this, ls, op_prio));
795791
gather_bld.activate();
796792
} else {
797-
dout(10) << "try_expire expired segment " << ls->seq << "/" << ls->offset << dendl;
793+
dout(10) << "try_expire expired " << *ls << dendl;
798794
submit_mutex.lock();
799795
ceph_assert(expiring_segments.count(ls));
800796
expiring_segments.erase(ls);
@@ -814,8 +810,7 @@ void MDLog::_maybe_expired(LogSegment *ls, int op_prio)
814810
return;
815811
}
816812

817-
dout(10) << "_maybe_expired segment " << ls->seq << "/" << ls->offset
818-
<< ", " << ls->num_events << " events" << dendl;
813+
dout(10) << "_maybe_expired " << *ls << dendl;
819814
try_expire(ls, op_prio);
820815
}
821816

@@ -830,10 +825,10 @@ void MDLog::_trim_expired_segments()
830825
uint64_t end = 0;
831826
for (auto it = segments.begin(); it != segments.end(); ++it) {
832827
auto& [seq, ls] = *it;
833-
dout(20) << __func__ << ": examining seq=" << seq << " ls=" << *ls << dendl;
828+
dout(20) << __func__ << ": examining " << *ls << dendl;
834829

835830
if (auto msit = major_segments.find(seq); msit != major_segments.end() && end > 0) {
836-
dout(10) << __func__ << ": expiring up to this major segment " << seq << dendl;
831+
dout(10) << __func__ << ": expiring up to this major segment seq=" << seq << dendl;
837832
uint64_t expire_pos = 0;
838833
for (auto& [seq2, ls2] : segments) {
839834
if (seq <= seq2) {
@@ -896,12 +891,10 @@ void MDLog::_expired(LogSegment *ls)
896891
{
897892
ceph_assert(ceph_mutex_is_locked_by_me(submit_mutex));
898893

899-
dout(5) << "_expired segment " << ls->seq << "/" << ls->offset
900-
<< ", " << ls->num_events << " events" << dendl;
894+
dout(5) << "_expired " << *ls << dendl;
901895

902896
if (!mds_is_shutting_down && ls == peek_current_segment()) {
903-
dout(5) << "_expired not expiring " << ls->seq << "/" << ls->offset
904-
<< ", last one and !mds_is_shutting_down" << dendl;
897+
dout(5) << "_expired not expiring current segment, and !mds_is_shutting_down" << dendl;
905898
} else {
906899
// expired.
907900
expired_segments.insert(ls);
@@ -1512,11 +1505,10 @@ void MDLog::standby_trim_segments()
15121505

15131506
bool removed_segment = false;
15141507
while (have_any_segments()) {
1515-
LogSegment *seg = get_oldest_segment();
1516-
dout(10) << " segment seq=" << seg->seq << " " << seg->offset <<
1517-
"~" << seg->end - seg->offset << dendl;
1508+
LogSegment *ls = get_oldest_segment();
1509+
dout(10) << " maybe trim " << *ls << dendl;
15181510

1519-
if (seg->end > expire_pos) {
1511+
if (ls->end > expire_pos) {
15201512
dout(10) << " won't remove, not expired!" << dendl;
15211513
break;
15221514
}
@@ -1527,7 +1519,7 @@ void MDLog::standby_trim_segments()
15271519
}
15281520

15291521
dout(10) << " removing segment" << dendl;
1530-
mds->mdcache->standby_trim_segment(seg);
1522+
mds->mdcache->standby_trim_segment(ls);
15311523
remove_oldest_segment();
15321524
removed_segment = true;
15331525
}

0 commit comments

Comments
 (0)