Re: request docs about the rbd migartion design and usage scenario

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, Sep 4, 2019 at 7:18 AM 王勇 <wangyong@xxxxxxxxxxxxxxx> wrote:
>
> Hi Jason,
> the rbd live-migration seems like two issues.
> 1、discard
> 1). discard one object (m_no =1000)
> 2). rbd execute current object (m_no=500)
> 3). rbd execute m_no=1000, object not exsits.  old data will overwrite new data.

A discard is a hint to free space and shouldn't be confused w/ a zero
operation. In this case, when a discard is issued against a clone (or
migration destination), it cannot just delete the object. Instead, it
creates a zero-byte object to ensure that it won't read from the
parent image in the future. When the "rbd migration execute"
eventually gets to the discarded object, there is a guard on the IO
operation to prevent it from writing to the object (which is the same
logic used to prevent old writes from the source image from
overwriting newer writes to the destination).

> 2、src image has clone image,
> rbd prepare need first close the src image, but no need to close close image.
> when rbd prepare ok, the clone image parent omap changed, but  in the librbd context of the clone image,
> it used the old parent. so clone image read will get the old data.

I'm not sure I understand what you mean here. What is the "clone"
image in your example here? The migration source or destination? In
the context of migration, the destination image has the source image's
parent as its parent, but it satisfies all reads by reading from the
source (and then the parent if required).

> could I get some discuss about those ?

In the future, please use the ceph-devel mailing list.

>
>
> ------------------ Original ------------------
> From:  "王勇"<wangyong@xxxxxxxxxxxxxxx>;
> Date:  Fri, Aug 30, 2019 11:28 AM
> To:  "Jason Dillaman"<jdillama@xxxxxxxxxx>;
> Subject:  Re: request docs about the rbd migartion design and usage scenario
>
> Hi Jason,
> I had done review on the docs about the live migration.
> it designed 3 steps: prepare/execute/commit.
> did it should be better which designed just 1 step? it seems like to one double  things.
> do you have backgroud design docs or discuss for  those designe?
>
> Thanks and Regards.
> ------
> wang yong



-- 
Jason



[Index of Archives]     [CEPH Users]     [Ceph Large]     [Ceph Dev]     [Information on CEPH]     [Linux BTRFS]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux