[sheepdog] [PATCH v4 0/4] sheep: writeback cache semantics in backend store

Hitoshi Mitake mitake.hitoshi at lab.ntt.co.jp
Fri Sep 7 07:25:50 CEST 2012


This patch series implements writeback cache semantics in backend
store of sheep. Current backend store farm and plain_store calls
open() with O_DSYNC, so every object write causes slow disk
access. This patch series try to reduce this overhead with flushing
disk cache with the invocation of SD_OP_FLUSH_VDI instead of every
object write. This strategy can improve performance when a number of
VMs is not so large.

Hitoshi Mitake (4):
  sheep: change gateway_forward_request() for forwarding requests to
    all other nodes
  sheep: add new operation flush() to store_driver
  sheep: add SD_OP_FLUSH_NODES and SD_OP_FLUSH_PEER for writeback cache
    semantics
  tests: modify usage of -w in 018, 019, 020 for new cache option

 configure.ac             |    2 +-
 include/internal_proto.h |    2 +
 include/sheep.h          |   13 ++++
 sheep/farm/farm.c        |    1 +
 sheep/gateway.c          |   68 +++++++++++++-------
 sheep/object_cache.c     |   10 ++--
 sheep/ops.c              |   45 +++++++++++--
 sheep/plain_store.c      |   31 +++++++++
 sheep/request.c          |    2 +-
 sheep/sheep.c            |  160 ++++++++++++++++++++++++++++++++++++++--------
 sheep/sheep_priv.h       |   33 ++++++++--
 sheep/store.c            |    9 +--
 tests/018                |    2 +-
 tests/019                |    2 +-
 tests/020                |    2 +-
 15 files changed, 306 insertions(+), 76 deletions(-)

-- 
1.7.2.5




More information about the sheepdog mailing list