[sheepdog] [PATCH 0/3] sheep, dog: configurable vid space

Hitoshi Mitake mitake.hitoshi at lab.ntt.co.jp
Mon Feb 2 10:23:03 CET 2015


At Mon,  2 Feb 2015 14:58:18 +0900,
Takafumi Fujieda wrote:
> 
> Current, deleted vids are not reused, without cutting relations.
> If snapshots of many online vdis in a cluster are created continuously,
> the vid space will be exhausted.

To be honest, it is hard for me to understand the motivation of
expanding VID space. As you pointed, cutting relation between VDIs
enables fine grained VID GC. Is this not enough?

Thanks,
Hitoshi

> 
> These patches make vid space size configurable from 24 bits to 26 bits
> by using the reserved bits in the oid.
> A new option "-s <bits>" is added to dog cluster format for specify the vid space size.
> (The default vid space size is 24 bits)
> 
> These patches don't care compatibility of object files and cluster snapshot data
> created under different vid spaces.
> If you want to change your cluster's vid space keeping existing vdis,
> the cluster must be shutdowned and all vdis should be outputted
> by using qemu-img and "dog vdi backup".
> 
> Takafumi Fujieda (3):
>   sheep, dog: add vid space variables to the structs
>   sheep, dog: make vid space size variable
>   dog: add a new option to specify the vid space
> 
>  dog/cluster.c             |   67 +++++++++++++++++++++++++++++++++++++++-----
>  dog/common.c              |   32 +++++++++++++++++-----
>  dog/dog.h                 |    3 +-
>  dog/farm/farm.c           |   16 ++++++++++-
>  dog/farm/farm.h           |    3 +-
>  dog/node.c                |    3 +-
>  dog/vdi.c                 |   22 ++++++++++-----
>  include/internal_proto.h  |    6 +++-
>  include/sheepdog_proto.h  |   18 +++++++-----
>  sheep/config.c            |   20 ++++++++++++-
>  sheep/gateway.c           |   23 +++++++++-------
>  sheep/group.c             |   10 +++++-
>  sheep/journal.c           |    3 +-
>  sheep/nfs/fs.c            |    4 +-
>  sheep/nfs/nfs.c           |    4 +-
>  sheep/object_cache.c      |   13 +++++----
>  sheep/object_list_cache.c |    2 +-
>  sheep/ops.c               |   35 +++++++++++++++++++-----
>  sheep/plain_store.c       |   25 ++++++++++-------
>  sheep/recovery.c          |   10 ++++---
>  sheep/request.c           |    3 +-
>  sheep/sheep_priv.h        |    6 +++-
>  sheep/vdi.c               |   43 +++++++++++++++++-----------
>  sheepfs/volume.c          |    2 +-
>  24 files changed, 269 insertions(+), 104 deletions(-)
> 
> -- 
> sheepdog mailing list
> sheepdog at lists.wpkg.org
> https://lists.wpkg.org/mailman/listinfo/sheepdog



More information about the sheepdog mailing list