[sheepdog] [PATCH 0/7] erasure code support, round 3

Liu Yuan namei.unix at gmail.com
Sun Oct 13 13:43:05 CEST 2013


This patch set add full recovery support for ereasure coding, which passes all
the tests regarding recovery on my box.

I've make tests to be erasure aware as much as I can, to test erasure code,

$ ./check -ec # this will create erasured vdi instead of replicated vdi if possible

the missing parts are,
 - add full snapshot/clone support
 - make 'vdi check' with erasured vdi
 - after aboves done, include more tests to be erasure code aware

Liu Yuan (7):
  recovery: cleanup erasure object handling functions
  sheep: update object list cache in default_create_and_write()
  recovery: mark last gathered epoch
  recovery: handle multiple node events for erasured vdi
  dog: fix parse_objs
  tests/functional: support start/kill sheep with number bigger than 9
  tests/functional: teach it to support erasure code

 dog/vdi.c                      |   46 ++++----
 sheep/ops.c                    |    6 +-
 sheep/plain_store.c            |   13 ++-
 sheep/recovery.c               |  229 ++++++++++++++++++++++++++--------------
 sheep/sheep_priv.h             |    2 +
 tests/functional/008           |    8 +-
 tests/functional/009           |   15 +--
 tests/functional/010           |   26 ++---
 tests/functional/010.out       |  200 +++++++++++------------------------
 tests/functional/014           |    6 +-
 tests/functional/015           |    6 +-
 tests/functional/018           |   10 +-
 tests/functional/019           |   10 +-
 tests/functional/020           |    6 +-
 tests/functional/022           |    2 +-
 tests/functional/024           |   10 +-
 tests/functional/026           |   14 +--
 tests/functional/029           |    9 +-
 tests/functional/029.out       |   22 +++-
 tests/functional/031           |   12 ++-
 tests/functional/031.out       |   10 +-
 tests/functional/032           |    4 +-
 tests/functional/032.out       |   78 ++++++++++++++
 tests/functional/034           |   18 ++--
 tests/functional/034.out       |    8 ++
 tests/functional/035           |   12 +--
 tests/functional/035.out       |  100 ++++++++++++------
 tests/functional/043           |   10 +-
 tests/functional/043.out       |   70 ++++++------
 tests/functional/045           |    8 +-
 tests/functional/050           |    6 +-
 tests/functional/054           |   15 +--
 tests/functional/054.out       |    6 +-
 tests/functional/060           |    4 +-
 tests/functional/060.out       |   64 +++++------
 tests/functional/062           |   12 ++-
 tests/functional/062.out       |    3 +-
 tests/functional/071           |    8 +-
 tests/functional/check         |    4 +
 tests/functional/common.config |    1 +
 tests/functional/common.rc     |   15 ++-
 41 files changed, 636 insertions(+), 472 deletions(-)

-- 
1.7.9.5




More information about the sheepdog mailing list