[Tarantool-patches] [PATCH v4 3/4] replication: implement an instance id filter for relay

Konstantin Osipov kostja.osipov at gmail.com
Wed Feb 26 13:18:19 MSK 2020


Generally I think you're on track with these series. 

I believe it will also be possible to use this filter to not send
records twice in a full mesh. E.g. you could add a follow up patch
which excludes from the subscription peers to which we have a
direct connection, this will easily solve the full-mesh
replication traffic explosion issue, the replica will only get the
changes directly from the peers.

Please solicit a detailed review.

* sergepetrenko <sergepetrenko at tarantool.org> [20/02/26 13:00]:

> +	unsigned int map_size = __builtin_popcount(id_mask);
> +	if (map_size) {
> +		size += mp_sizeof_array(map_size) + map_size *
> +			mp_sizeof_uint(VCLOCK_MAX);
> +	}

Better:mask_size.

Besides, this is perhaps not id_mask, but id_filter. The
difference is that mask is something inclusive, i.e. if you're in
the mask, you get the records, while filter is
something exclusive, if you're not in the mask, you don't get the
records.


-- 
Konstantin Osipov, Moscow, Russia


More information about the Tarantool-patches mailing list