[sheepdog] [PATCH] sheep: stop special casing local objects on gateways

Liu Yuan namei.unix at gmail.com
Wed Jun 6 05:56:53 CEST 2012


On 06/05/2012 08:10 PM, Christoph Hellwig wrote:

> Sheepdog is designed for clusters large enough that finding objects locally
> is the exception, so stop optimizing for it.  Remove all code that bypasses
> the networking code when handling an object that is local to the gateway.
> 
> In the short runs the only benefits are code simplification, and not having
> to calculate all object locations in forward_read_obj_req, but long run
> the better split should allow for some nice optimizations like using the
> splice system call on the gateway so that data can be forwarded without
> ever having to copy it to userspace.


The pros is simplification of code, but you don't say cons, I think we
should know the perf number we lost by adding a network overhead for IOs
happen to be local, this can be easily collected by built-in tracer.

Thanks,
Yuan



More information about the sheepdog mailing list