[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-block] [PATCH v9 2/3] quorum: implement bdrv_add_child() and b
From: |
Eric Blake |
Subject: |
Re: [Qemu-block] [PATCH v9 2/3] quorum: implement bdrv_add_child() and bdrv_del_child() |
Date: |
Thu, 21 Jan 2016 09:58:42 -0700 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.5.0 |
On 01/21/2016 06:05 AM, Alberto Garcia wrote:
> On Thu 21 Jan 2016 02:54:10 AM CET, Wen Congyang <address@hidden> wrote:
>
>>>> @@ -875,9 +878,9 @@ static int quorum_open(BlockDriverState *bs, QDict
>>>> *options, int flags,
>>>> ret = -EINVAL;
>>>> goto exit;
>>>> }
>>>> - if (s->num_children < 2) {
>>>> + if (s->num_children < 1) {
>>>> error_setg(&local_err,
>>>> - "Number of provided children must be greater than 1");
>>>> + "Number of provided children must be 1 or more");
>>>> ret = -EINVAL;
>>>> goto exit;
>>>> }
>>>
>>> I have a question: if you have a Quorum with just one member and you
>>> add a new one, how do you know if it has the same data as the
>>> existing one?
>>>
>>> In general, what do you do to make sure that the data in a new Quorum
>>> child is consistent with that of the rest of the array?
>>
>> Quorum can have more than one child when it starts. But we don't do
>> the similar check. So I don't think we should do such check here.
>
> Yes, but when you start a VM you can verify in advance that all members
> of the Quorum have the same data. If you do that on a running VM how can
> you know if the new disk is consistent with the others?
User error if it is not. Just the same as it is user error if you
request a shallow drive-mirror but the destination is not the same
contents as the backing file. I don't think qemu has to protect us from
user error in this case.
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
signature.asc
Description: OpenPGP digital signature