From fd439bfaf2c4fc8832b020feb472b5ab6a5c5a94 Mon Sep 17 00:00:00 2001 From: Sage Weil Date: Mon, 22 Sep 2008 11:21:44 -0700 Subject: [PATCH] journal: avoid queueing null context --- src/os/FileJournal.cc | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/src/os/FileJournal.cc b/src/os/FileJournal.cc index a854ef88e77a7..3ddc660bb791d 100644 --- a/src/os/FileJournal.cc +++ b/src/os/FileJournal.cc @@ -287,8 +287,10 @@ bool FileJournal::check_for_wrap(__u64 seq, off64_t *pos, off64_t size, bool can full_commit_seq = seq; full_restart_seq = seq+1; while (!writeq.empty()) { - writing_seq.push_back(writeq.front().seq); - writing_fin.push_back(writeq.front().fin); + if (writeq.front().fin) { + writing_seq.push_back(writeq.front().seq); + writing_fin.push_back(writeq.front().fin); + } writeq.pop_front(); } print_header(); @@ -534,8 +536,10 @@ void FileJournal::submit_entry(__u64 seq, bufferlist& e, Context *oncommit) // not journaling this. restart writing no sooner than seq + 1. full_restart_seq = seq+1; dout(10) << " journal is/was full, will restart no sooner than seq " << full_restart_seq << dendl; - writing_seq.push_back(seq); - writing_fin.push_back(oncommit); + if (oncommit) { + writing_seq.push_back(seq); + writing_fin.push_back(oncommit); + } } } -- 2.39.5