[Tarantool-patches] [PATCH v3 2/4] gc: rely on minimal vclock components instead of signatures

Konstantin Osipov kostja.osipov at gmail.com
Mon Mar 23 19:40:25 MSK 2020


* Serge Petrenko <sergepetrenko at tarantool.org> [20/03/23 19:23]:
> +	struct vclock min_vclock;
> +	struct vclock *vclock;
> +	struct gc_consumer *consumer = gc_tree_first(&gc.consumers);
> +	if (consumer != NULL) {
> +		vclock_copy(&min_vclock, &consumer->vclock);
> +		while ((consumer = gc_tree_next(&gc.consumers, consumer)) != NULL) {
> +			vclock_min(&min_vclock, &consumer->vclock);
> +		}
> +		vclock_min(&min_vclock, &checkpoint->vclock);
> +		vclock = &min_vclock;
> +	} else {
> +		vclock =  &checkpoint->vclock;
> +	}

This loop is a total magic to anyone not present at our zoom
conversation. Please explain what's going on here in a comment.



-- 
Konstantin Osipov, Moscow, Russia
https://scylladb.com


More information about the Tarantool-patches mailing list