[sheepdog] [PATCH v3 0/7] retire old journal implementation
Liu Yuan
namei.unix at gmail.com
Thu Apr 4 14:49:35 CEST 2013
From: Liu Yuan <tailai.ly at taobao.com>
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(-)
--
1.7.9.5
More information about the sheepdog
mailing list