2 ms·
Versions of cache-data aren't numbers, they're vectors-of-numbers (at a minimum). Here's a bunch of versions of variable "X": X@Alice-V1, X@Alice-V2, X@Bob-V1
by dragontamer 4y ago
Versions of cache-data aren't numbers, they're vectors-of-numbers (at a minimum).
Here's a bunch of versions of variable "X":
X@Alice-V1, X@Alice-V2, X@Bob-V1, X@Alice-V2/Bob-V2, X@Carol-V1
Which version of "X" should you read?
EDIT: Alice, Bob, and Carol are three different servers. What has happened here is that Alice and Bob are closer together, so their updates are faster between each other (synchronizing the writes). Carol is slower for some reason (bad connection?), and is going to update off of old data.
In this case, the two valid caches are X@Alice-V2/Bob-V2, and X@Carol-V1. The other cached data is old and can be discarded.
Things get complicated when you have not only reads (such as in your simplified question), but also writes that are cached (such as what happens in practice).