[sheepdog] [Qemu-devel] [PATCH] sheepdog: fix overlapping metadata update

Vasiliy Tolstov v.tolstov at selfip.ru
Thu Jul 30 08:41:08 CEST 2015

2015-07-29 12:31 GMT+03:00 Liu Yuan <namei.unix at gmail.com>:
> Technically, it won't affect the performance because index updates are not range
> but concrete in terms of underlying 4M block size. Only 2 or 3 indexes in a
> range will be updated and 90+% updates will be only 1. So if 2 updates stride a
> large range, it will actually worse the performance of sheepdog because many
> additional unref of object will be executed by sheep internally.
> It is not a performance problem but more the right fix. Even with your patch,
> updates of inode can overlap. You just don't allow overlapped requests go to
> sheepdog, which is a overkill approach. IMHO, we should only adjust to avoid
> the overlapped inode updates, which can be done easily and incrementally on top
> of old code, rather than take on a complete new untested overkill mechanism. So
> what we get from your patch? Covering the problem and lock every requests?
> Your patch actually fix nothing but just cover the problem by slowing down the
> request and even with your patch, the problem still exists because inode updates
> can overlap. Your commit log doesn't explain what is the real problem and why
> your fix works. This is not your toy project that can commit whatever you want.
>> BTW, sheepdog project was already forked, why don't you fork the block
>> driver, too?
> What makes you think you own the block driver?
> We forked the sheepdog project because it is low quality of code partly and mostly
> some company tries to make it a private project. It is not as open source friendly
> as before and that is the main reason Kazutaka and I chose to fork the sheepdog
> project. But this doesn't mean we need to fork the QEMU project, it is an
> open source project and not your home toy.
> Kazutaka and I are the biggest contributers of both sheepdog and QEMU sheepdog
> block driver for years, so I think I am eligible to review the patch and
> responsible to suggest the right fix. If you are pissed off when someone else
> have other opinions, you can just fork the code and play with it at home or you
> follow the rule of open source project.

Jeff Cody, please be the judge, patch from Hitoshi solved my problem
that i emailed in sheepdog list (i have test environment with 8 hosts
on each 6 SSD disks and infiniband interconnect between hosts) before
Hitoshi patch, massive writing to sheepdog storage breaks file system
and corrupt it.
After the patch i don't see issues.

Vasiliy Tolstov,
e-mail: v.tolstov at selfip.ru

More information about the sheepdog mailing list