]> git.apps.os.sepia.ceph.com Git - ceph.git/commit
mds: add atomic log rewrite on format change
authorJohn Spray <john.spray@inktank.com>
Tue, 6 May 2014 12:18:03 +0000 (13:18 +0100)
committerJohn Spray <john.spray@inktank.com>
Tue, 20 May 2014 13:07:50 +0000 (14:07 +0100)
commita4ae168ae61589fbd8c85c7ea970ea6bcd0903e3
treec290c9c316a440158f0cd69895239f6d6edd2c83
parentdba721f199fa225572a44b4619bf0da9310f7c9d
mds: add atomic log rewrite on format change

Two main pieces to this:
 * A new JournalPointer object that stores two journal
   inodes so that we can do a double-buffered update,
   followed by an atomic swap.
 * An extended recovery process in MDLog that dereferences
   the JournalPointer and conditionally rewrites the
   journal to accomodate format updates.

The JournalPointer indirection should also be useful for
making cephfs-journal-tool do updates more safely.

Signed-off-by: John Spray <john.spray@inktank.com>
src/mds/MDLog.cc
src/mds/MDLog.h
src/mds/mdstypes.h
src/osdc/Journaler.h