[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