[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v2 1/1] quorum: Change vote rules for 64 bits ha
From: |
Wen Congyang |
Subject: |
Re: [Qemu-devel] [PATCH v2 1/1] quorum: Change vote rules for 64 bits hash |
Date: |
Fri, 19 Feb 2016 16:26:53 +0800 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.5.0 |
On 02/18/2016 11:16 PM, Alberto Garcia wrote:
> On Tue 16 Feb 2016 03:15:44 AM CET, Changlong Xie <address@hidden> wrote:
>> If quorum has two children(A, B). A do flush sucessfully, but B flush
>> failed. We MUST choice A as winner rather than just pick anyone of
>> them. Otherwise the filesystem of guest will become read-only with
>> following errors:
>>
>> end_request: I/O error, dev vda, sector 11159960
>> Aborting journal on device vda3-8
>> EXT4-fs error (device vda3): ext4_journal_start_sb:327: Detected abort
>> journal
>> EXT4-fs (vda3): Remounting filesystem read-only
>
> Hi Xie,
>
> Let's see if I'm getting this right:
>
> - When Quorum flushes to disk, there's a vote among the return values of
> the flush operations of its members, and the one that wins is the one
> that Quorum returns.
>
> - If there's a tie then Quorum choses the first result from the list of
> winners.
>
> - With your patch you want to give priority to the vote with result == 0
> if there's any, so Quorum would return 0 (and succeed).
>
> This seems to me like an ad-hoc fix for a particular use case. What if
> you have 3 members and two of them fail with the same error code? Would
> you still return 0 or the error code from the other two?
For example:
children.0 returns 0
children.1 returns -EIO
children.2 returns -EPIPE
In this case, quorum returns -EPIPE now(without this patch).
For example:
children.0 returns -EPIPE
children.1 returns -EIO
children.2 returns 0
In this case, quorum returns 0 now.
If two children returns the same error, and only one returns 0, this patch
doesn't
change the behavior.
Back to your question, before this patch, sometimes quorum returns error, and
sometimes quorum returns 0. In such case, which is better? Always return 0 or
always return error? In my opinion, we can always return 0 if we allow quorum
returns 0 in case 2.
>
> Also, is this only supposed to be used in FIFO mode? Your patch doesn't
> seem to make any distinction.
IIRC, FIFO mode is only for read operation. This patch is not for FIFO mode.
Thanks
Wen Congyang
>
> Thanks!
>
> Berto
>
>
> .
>
- [Qemu-devel] [PATCH v2 0/1] change quorum vote rules for 64-bits hash, Changlong Xie, 2016/02/15
- [Qemu-devel] [PATCH v2 1/1] quorum: Change vote rules for 64 bits hash, Changlong Xie, 2016/02/15
- Re: [Qemu-devel] [PATCH v2 1/1] quorum: Change vote rules for 64 bits hash, Dr. David Alan Gilbert, 2016/02/18
- Re: [Qemu-devel] [PATCH v2 1/1] quorum: Change vote rules for 64 bits hash, Alberto Garcia, 2016/02/18
- Re: [Qemu-devel] [PATCH v2 1/1] quorum: Change vote rules for 64 bits hash,
Wen Congyang <=
- Re: [Qemu-devel] [PATCH v2 1/1] quorum: Change vote rules for 64 bits hash, Alberto Garcia, 2016/02/19
- Re: [Qemu-devel] [PATCH v2 1/1] quorum: Change vote rules for 64 bits hash, Max Reitz, 2016/02/20
- Re: [Qemu-devel] [PATCH v2 1/1] quorum: Change vote rules for 64 bits hash, Changlong Xie, 2016/02/21
- Re: [Qemu-devel] [PATCH v2 1/1] quorum: Change vote rules for 64 bits hash, Dr. David Alan Gilbert, 2016/02/22
- Re: [Qemu-devel] [PATCH v2 1/1] quorum: Change vote rules for 64 bits hash, Changlong Xie, 2016/02/22
- Re: [Qemu-devel] [PATCH v2 1/1] quorum: Change vote rules for 64 bits hash, Dr. David Alan Gilbert, 2016/02/22
- Re: [Qemu-devel] [PATCH v2 1/1] quorum: Change vote rules for 64 bits hash, Kevin Wolf, 2016/02/22
- Re: [Qemu-devel] [PATCH v2 1/1] quorum: Change vote rules for 64 bits hash, Dr. David Alan Gilbert, 2016/02/22
- Re: [Qemu-devel] [PATCH v2 1/1] quorum: Change vote rules for 64 bits hash, Changlong Xie, 2016/02/22
- Re: [Qemu-devel] [PATCH v2 1/1] quorum: Change vote rules for 64 bits hash, Alberto Garcia, 2016/02/22