[sheepdog] [PATCH v5 0/7] retire old journal implementation
MORITA Kazutaka
morita.kazutaka at lab.ntt.co.jp
Mon Apr 8 18:10:30 CEST 2013
At Mon, 8 Apr 2013 14:04:54 +0800,
Liu Yuan wrote:
>
> From: Liu Yuan <tailai.ly at taobao.com>
>
> v6:
> - rename JF_CONFI AS JF_CONFIG
> - add a FIXME
> - remove improper commit log
>
> v5:
> - rename confi as config and update commit log
>
> v4:
> - free buff at replay_journal_entry
> - fix build error for older GCC
>
> v3:
> - fold epoch patch into this series.
> - fix GCC compatible issue
>
> v2: correct colding style problem
>
> This patch set aims to retire old journal.c and rename journal_file.c
> as journal.c to get a uniform journaling for object, config file and
> epoch file (this is a future work).
>
> This is because old journal.c can't handle following case:
> 1 creat()
> 2 *crash*
> 3 write()
>
> This will leave an empty file created. Journal file implementation won't have
> this problem because it logs create and write as one transaction.
>
> Liu Yuan (7):
> sheep: teach journal file to be md friendly
> tests/047: add md test support
> sheep: teach journal file to handle epoch and config write
> sheep: use new journal API for config file
> sheep: rename journal_file.c as journal.c
> sheep: journaling epoch file write
> sheep: handle broken epoch file at get_latest_epoch
>
> sheep/Makefile.am | 2 +-
> sheep/config.c | 33 +--
> sheep/journal.c | 573 +++++++++++++++++++++++++++++++-------------------
> sheep/journal_file.c | 97 +++++++--
> sheep/ops.c | 8 +-
> sheep/plain_store.c | 7 +-
> sheep/sheep.c | 26 ++-
> sheep/sheep_priv.h | 15 +-
> sheep/store.c | 106 +++++-----
> tests/047 | 10 +-
> tests/group | 2 +-
> 11 files changed, 538 insertions(+), 341 deletions(-)
Applied, thanks!
Kazutaka
More information about the sheepdog
mailing list