From 130eba48495d0e6acd8a472cbf0c47ebbc7a038c Mon Sep 17 00:00:00 2001 From: David Zafman Date: Thu, 5 Mar 2015 19:16:45 -0800 Subject: [PATCH] osd: FileJournal: Add _fdump() that takes Formatter instead of ostream Signed-off-by: David Zafman --- src/os/FileJournal.cc | 12 +++++++++--- src/os/FileJournal.h | 1 + 2 files changed, 10 insertions(+), 3 deletions(-) diff --git a/src/os/FileJournal.cc b/src/os/FileJournal.cc index 136de61d0ff..4ba468f7e13 100644 --- a/src/os/FileJournal.cc +++ b/src/os/FileJournal.cc @@ -583,7 +583,15 @@ int FileJournal::simple_dump(ostream& out) int FileJournal::_dump(ostream& out, bool simple) { - dout(10) << "dump" << dendl; + JSONFormatter f(true); + int ret = _fdump(f, simple); + f.flush(out); + return ret; +} + +int FileJournal::_fdump(Formatter &f, bool simple) +{ + dout(10) << "_fdump" << dendl; assert(fd == -1); int err = _open(false, false); @@ -598,7 +606,6 @@ int FileJournal::_dump(ostream& out, bool simple) off64_t next_pos = header.start; - JSONFormatter f(true); f.open_object_section("journal"); f.open_object_section("header"); @@ -669,7 +676,6 @@ int FileJournal::_dump(ostream& out, bool simple) f.close_section(); f.close_section(); - f.flush(out); dout(10) << "dump finish" << dendl; close(); diff --git a/src/os/FileJournal.h b/src/os/FileJournal.h index d565252f4ef..9e07b4046d9 100644 --- a/src/os/FileJournal.h +++ b/src/os/FileJournal.h @@ -415,6 +415,7 @@ private: int dump(ostream& out); int simple_dump(ostream& out); + int _fdump(Formatter &f, bool simple); void flush(); -- 2.47.3