The present implementation of http/swift is not perfect, it can't create
too much containers or objects. So we want to store all objects in one
hyper volume vdi and use new structure 'obj-inode' to identify its offset
and length in this vdi, just like some local file system. To achieve this,
we need distributed locks to ensure that only one thread can create a new
'obj-inode' (or delete) in this vdi at a same time.

This patch set is a try to implement the distributed lock.

If we add code in sheep/cluster/zookeeper.c and use the framework of
cluster to implement this distributed lock, then we have to add
implementation for corosync、local and shepherd. That's too complicated. So
what we need is adding lock.c in sheep/http/ and only use it in http
interface.


2013/11/24 Robin Dong <[email protected]>

> The help info for "sheep -c zookeeper" is "zookeeperr" which have
> a extra 'r'.
>
> Signed-off-by: Robin Dong <[email protected]>
> ---
>  sheep/sheep.c |    2 +-
>  1 files changed, 1 insertions(+), 1 deletions(-)
>
> diff --git a/sheep/sheep.c b/sheep/sheep.c
> index 08b770e..9d9afa0 100644
> --- a/sheep/sheep.c
> +++ b/sheep/sheep.c
> @@ -83,7 +83,7 @@ static const char cluster_help[] =
>  "\tzookeeper: use zookeeper driver, need extra arguments\n"
>  "\n\tzookeeper arguments: address-list,tiemout=value (default as 3000)\n"
>  "\nExample:\n\t"
> -"$ sheep -c zookeeperr:IP1:PORT1,IP2:PORT2,IP3:PORT3,timeout=1000 ...\n"
> +"$ sheep -c zookeeper:IP1:PORT1,IP2:PORT2,IP3:PORT3,timeout=1000 ...\n"
>  "This tries to use 3 node zookeeper cluster, which can be reached by\n"
>  "IP1:PORT1, IP2:PORT2, IP3:PORT3 to manage membership and broadcast
> message\n"
>  "and set the timeout of node heartbeat as 1000 milliseconds\n";
> --
> 1.7.1
>
>


-- 
--
Best Regard
Robin Dong
-- 
sheepdog mailing list
[email protected]
http://lists.wpkg.org/mailman/listinfo/sheepdog

Reply via email to