[sheepdog-users] plan for Sheepdog 1.0 and new organization

Liu Yuan namei.unix at gmail.com
Fri May 24 04:32:34 CEST 2013

On 05/24/2013 08:46 AM, MORITA Kazutaka wrote:
> What I came up with were:
>  - Make the current recovery process multi-threaded.  Then sheep can
>    do multi-thread I/O against unrecovered objects, too.
>  - Sleep a bit (e.g. 100 ms) before recovering a object while there
>    are outstanding I/Os from VMs.

I think we can't simply sleep. Suppose volume A has only one object O,
so when A read/write O, we need recover it first, otherwise the request
won't have a chance to execute. So to execute the request, we have to
put higher priority to recover the object first.

Probably the solution is like current lazy recovery:
 - use tree to manage prio_oids and recovery_oids
 - put higher priority to prio_oid and recover them aggressively
 - put lower priority to other oids to be recovered.


More information about the sheepdog-users mailing list