From: Jason Dillaman Date: Tue, 14 Jul 2015 18:12:40 +0000 (-0400) Subject: journal: add method to remove journal from disk X-Git-Tag: v10.0.1~102^2~16 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=651e4f7ef1575c3b35392e61a0e2f5043ecbd963;p=ceph.git journal: add method to remove journal from disk Signed-off-by: Jason Dillaman --- diff --git a/src/journal/Journaler.cc b/src/journal/Journaler.cc index 1ba002cae374..c61676bc0095 100644 --- a/src/journal/Journaler.cc +++ b/src/journal/Journaler.cc @@ -95,6 +95,23 @@ int Journaler::create(uint8_t order, uint8_t splay_width) { return 0; } +int Journaler::remove() { + int r = m_trimmer->remove_objects(); + if (r < 0) { + lderr(m_cct) << "failed to remove journal objects: " << cpp_strerror(r) + << dendl; + return r; + } + + r = m_header_ioctx.remove(m_header_oid); + if (r < 0) { + lderr(m_cct) << "failed to remove journal header: " << cpp_strerror(r) + << dendl; + return r; + } + return 0; +} + int Journaler::register_client(const std::string &description) { return m_metadata->register_client(description); } diff --git a/src/journal/Journaler.h b/src/journal/Journaler.h index 14e45d69109a..f27038d5cf03 100644 --- a/src/journal/Journaler.h +++ b/src/journal/Journaler.h @@ -31,6 +31,7 @@ public: ~Journaler(); int create(uint8_t order, uint8_t splay_width); + int remove(); void init(Context *on_init);