'Is there any consensus protocol that does not guarantee linearizability?

While studying consensus protocols, I notice for the typical ones, such Paxos, MultiPaxos, Fast Paxos, EPaxos etc, they all guarantee linearizability.

But it seems there is no literature explicitly saying linearizability is the necessary property of consensus protocol. So, I am wondering whether there is any consensus protocol which do not provide linearizability.

Can we say linearizability is a necessary property for consensus protocol?



Solution 1:[1]

I don't think they "guarantee" linearizability; it's just they can be used to implements libearizability if needed - due to nature of linear log.

Let me out it this way: let's say in an interview you would be asked - please, implement an linearizable register. You have many options, and one of those options is to use a consensus based log; where you would make all writes and, more important, read via that log.

Linearizability is a property of a system and consensus protocol(s) is one of solutions. There are plenty of systems who do use consensus protocols, but don't offer linearizability as that system's feature.

Sources

This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.

Source: Stack Overflow

Solution Source
Solution 1 AndrewR