[Tarantool-patches] [tarantool-patches] Re: [PATCH v2 4/4] replication: use wal memory buffer to fetch rows
Vladislav Shpilevoy
v.shpilevoy at tarantool.org
Tue Oct 22 02:05:49 MSK 2019
On 23/09/2019 23:51, Vladislav Shpilevoy wrote:
> Thanks for the answers.
>
>>>> + struct vclock *send_vclock;
>>>> + if (relay->version_id < version_id(1, 7, 4))
>>>> + send_vclock = &relay->r->vclock;
>>>
>>> 3. I know, this is old code existed before your patch, and it will
>>> be dropped, but why do you send relay->r->vclock and don't decode it
>>> anywhere? Above you decoded a received vclock into relay->recv_vclock.
>>> relay->r->vclock is not updated, and nonetheless you send it.
>> Before 1.7.4 we used recovery vclock as replica vclock. So recovery does the
>> work.
>
> It *did* the work, but now it doesn't. Recovery vclock was being
> updated in relay_process_wal_event(). Now you relay directly
> from memory, and recovery vclock is not changed until you fall
> to disk. Moreover, looks like recovery object does not exist until
> you fall to disk. It means, that to 1.7.4 you would either crash or
> send the same vclock until a next fall to disk, wouldn't you?
>
Any news here?
More information about the Tarantool-patches
mailing list