On 02/12/2015 03:21 PM, Fam Zheng wrote:
> Hi Congyang,
>
> On Thu, 02/12 11:07, Wen Congyang wrote:
>> +== Workflow ==
>> +The following is the image of block replication workflow:
>> +
>> + +----------------------+ +------------------------+
>> + |Primary Write Requests| |Secondary Write Requests|
>> + +----------------------+ +------------------------+
>> + | |
>> + | (4)
>> + | V
>> + | /-------------\
>> + | Copy and Forward | |
>> + |---------(1)----------+ | Disk Buffer |
>> + | | | |
>> + | (3) \-------------/
>> + | speculative ^
>> + | write through (2)
>> + | | |
>> + V V |
>> + +--------------+ +----------------+
>> + | Primary Disk | | Secondary Disk |
>> + +--------------+ +----------------+
>> +
>> + 1) Primary write requests will be copied and forwarded to Secondary
>> + QEMU.
>> + 2) Before Primary write requests are written to Secondary disk, the
>> + original sector content will be read from Secondary disk and
>> + buffered in the Disk buffer, but it will not overwrite the existing
>> + sector content in the Disk buffer.
>
> I'm a little confused by the tenses ("will be" versus "are") and terms. I am
> reading them as "s/will be/are/g"
>
> Why do you need this buffer?
We only sync the disk till next checkpoint. Before next checkpoint, secondary
vm write to the buffer.
>
> If both primary and secondary write to the same sector, what is saved in the
> buffer?
The primary content will be written to the secondary disk, and the secondary
content
is saved in the buffer.
Thanks
Wen Congyang
>
> Fam
>
>> + 3) Primary write requests will be written to Secondary disk.
>> + 4) Secondary write requests will be buffered in the Disk buffer and it
>> + will overwrite the existing sector content in the buffer.
>> +
> .
>