[Sheepdog] [PATCH] fix a bug of deleting base vdi fail

Christoph Hellwig hch at infradead.org
Wed May 2 18:12:04 CEST 2012


On Wed, May 02, 2012 at 12:03:18PM +0800, Li Wenpeng wrote:
> From: levin li <xingke.lwp at taobao.com>
> 
> Take a view of the following snapshot chain:
> 
> base vdi --> snapshot vdi --> cloned vdi
> 
> when cloned vdi has its own data objects created by copy-on-write,
> we firstly delete the cloned vdi, the delete the base vdi, at last
> we delete snapshot vdi.
> 
> when deleting the snapshot vdi, it try to traverse the snapshot chain to
> cleanup all the data objects, but the copy-on-write objects has been
> deleted by the first deletion work, so it may get failed and set the
> dw->delete_error to be true, it doesn't matter for the future deletion,
> we just need to guarantee the objects of the snapshot vdi deleteing success,
> but before this, we need to clear the previous error flag at dw->delete_error,
> orelse it may cause failure of deleting the snapshot vdi.

Can you post a list of command lines to reproduce this issue?  That we
we can add it to the upcoming regression test suite.



More information about the sheepdog mailing list