[Tarantool-patches] [PATCH v3 0/4] replication: fix applying of rows originating from local instance

Georgy Kirichenko kirichenkoga at gmail.com
Sat Feb 22 23:21:35 MSK 2020


On Tuesday, February 18, 2020 8:37:03 PM MSK Serge Petrenko wrote:
Hi! Thanks for the patch.
I am pretty sure replica should be able to apply all replication stream 
transaction in a proper way without any reliance on a master correctness. Or 
signal an error if this is impossible. I am suggesting such logic because a 
replica has the complete information about it own at the moment. This includes 
local vclock, cfg, all existing appliers state and incoming streams. 

WBR

> https://github.com/tarantool/tarantool/issues/4739
> https://github.com/tarantool/tarantool/tree/sp/gh-4739-vclock-assert-v3
> 
> Changes in v3:
>   - review fixes as per review from Vlad
>   - instead of skipping rows on replica side,
>     do it on master side, by patching recovery
>     to silently follow rows coming from a certain
>     instance.
> 
> Changes in v2:
>  - review fixes as per review from Kostja
> 
> Serge Petrenko (4):
>   box: expose box_is_orphan method
>   recovery: allow to ignore rows coming from a certain instance
>   replication: do not relay rows coming from a remote instance back to
>     it
>   wal: warn when trying to write a record with a broken lsn
> 
>  src/box/applier.cc         |  2 +-
>  src/box/box.cc             | 15 +++++++++++----
>  src/box/box.h              |  3 +++
>  src/box/iproto_constants.h |  1 +
>  src/box/recovery.cc        | 12 +++++++++++-
>  src/box/recovery.h         |  7 ++++++-
>  src/box/relay.cc           | 14 +++++++++++---
>  src/box/relay.h            |  3 ++-
>  src/box/wal.c              | 17 ++++++++++++++---
>  src/box/xrow.c             | 18 +++++++++++++++---
>  src/box/xrow.h             | 26 ++++++++++++++++----------
>  11 files changed, 91 insertions(+), 27 deletions(-)

-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: This is a digitally signed message part.
URL: <https://lists.tarantool.org/pipermail/tarantool-patches/attachments/20200222/ce8af28b/attachment.sig>


More information about the Tarantool-patches mailing list