← Back to context

Comment by ryandv

2 days ago

> If the system is complex enough and there are always incoming changes

You literally don't understand the definition of eventual consistency. The weakest form of eventual consistency, quiescent consistency, requires [0]:

    that in any execution where the updates stop at
    some point (i.e. where there are only finitely many updates), there
    must exist some state, such that each session converges to that state
    (i.e. all but finitely many operations e in each session [f] see that state).

Emphasis on the "updates stop[ping] at some point," or there being only "finitely many updates." By positing that there are always incoming changes you already fail to satisfy the hypothesis of the definition.

In this model all other forms of eventual consistency exhibit at least this property of quiescent consistency (and possibly more).

[0] https://www.microsoft.com/en-us/research/wp-content/uploads/...

My point was kind of tongue-in-cheek. Like the other comment suggests, I was talking about how people actually use the term "eventually consistent" for example to refer to system-of-systems of multiple microservices or event sourcing systems. It is possible to define and use the terms more exactly like you suggest. I have no problem with that kind of use. But even if you use the terms more carefully, most people do not, meaning that when you talk about these systems using the misunderstood terms, people may misunderstand you although you are careful.

The GP proposed that the definition should be changed. That in no way implies a lack of understanding of the present definition.