Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Bugfix: validation of delta before applying them.
Due to the nature UDP, the existence of resets and the fact that we are gossipping to several nodes at the same time, it is possible for our obsolete deltas to arrive. This PR adds some validation to detect if the delta is valid, and whether it will bring us to a better state or not. It also removes the nodes to reset information, which was actually taking a large amount of the MTU on large clusters. (For 20 nodes, around 1KB) Reset is now just expressed by sending the delta with `from_version = 0`. Closes #129 - Removing hidden contract We avoid computing tombstone's Instant upon deserialization. It was hiding a very hidden contract forcing us to deserialize mutation in the order of their version. With this change, we defer the computation of the instant to the call of the apply_delta method. All of the tombstone from a delta get the exact same `Instant`.
- Loading branch information