> 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?
I understand, if I want to operate a sheepdog cluster with periodical snapshot for a long term, I have to do following maintenance once in several years. 1. stop VDI clients (e.g. tgt, qemu) 2. create clones for VID recycling $ dog vdi snapshot <current VDI name> $ dog vdi clone --no-share -s <latest sid> <current VDI name> <new VDI name> 3. update clients (e.g. re-create targets, update the startup scripts of VM) 4. restart clients 5. delete old snapshots Thanks, Takafumi > -----Original Message----- > From: Hitoshi Mitake <mitake.hito...@lab.ntt.co.jp> > Sent: Monday, February 02, 2015 06:23 PM > To: Takafumi Fujieda <fujieda.takaf...@lab.ntt.co.jp> > Cc: sheepdog@lists.wpkg.org > Subject: Re: [sheepdog] [PATCH 0/3] sheep, dog: configurable vid space > > 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@lists.wpkg.org > > https://lists.wpkg.org/mailman/listinfo/sheepdog -- sheepdog mailing list sheepdog@lists.wpkg.org https://lists.wpkg.org/mailman/listinfo/sheepdog