by rntz on 4/9/23, 8:35 PM with 39 comments
by gwern on 4/9/23, 9:49 PM
by ChuckMcM on 4/9/23, 10:20 PM
Given the problem that you want to accept updates to a database at multiple servers but cannot guarantee that all of those servers have the same notion of time and thus creating an accurate mutation vector that leaves the state of the database consistent, NIS+ used a tuple of (update, secondary-server-time) which the primary could query the secondary and compute a time delta (positive or negative) that would allow it to sort updates to the same database entry from multiple secondaries into a primary relative time order. It could then apply the updates and produce deltas for all secondaries which would apply any necessary changes to their database.
As a systems problem I really enjoyed the challenge.
by hinkley on 4/9/23, 9:48 PM
A few years ago when I ended up down the rabbit hole on CRDTs and alternatives I learned of Liskov’s work on time vectors, which is still my top “things you didn’t know about Barbara Liskov” fact.
by nitwit005 on 4/10/23, 5:33 AM
by vivegi on 4/11/23, 6:16 AM
Lamport cites
> The origin of this paper was the note The Maintenance of Duplicate Databases by Paul Johnson and Bob Thomas. I believe their note introduced the idea of using message timestamps in a distributed algorithm. I happen to have a solid, visceral understanding of special relativity (see [5]). This enabled me to grasp immediately the essence of what they were trying to do.
The Maintenance of Duplicate Databases, Paul Johnson and Bob Thomas (1975). https://www.rfc-archive.org/getrfc.php?rfc=677
Leslie Lamport's website link to Time Clocks. https://lamport.azurewebsites.net/pubs/pubs.html#time-clocks
by uvdn7 on 4/10/23, 1:23 AM
I have the impression that it is controversial about who invented the hybrid logical clock first as well. Although most people cite the Kulkani paper from 2015 I think?
Do people know who else claims to invent HLC first?
by dboreham on 4/10/23, 3:26 AM
by baryphonic on 4/10/23, 12:05 PM
by infogulch on 4/9/23, 9:16 PM
by IIAOPSW on 4/10/23, 12:38 AM
by gslin on 4/9/23, 10:06 PM
by DantesKite on 4/10/23, 3:27 AM
by sublinear on 4/9/23, 9:28 PM
No. 0% fault of the author and 100% the fault of the Wikipedia editor. Generally speaking, people who are unwilling to ensure the accuracy of their work don't deserve the privilege to do that work.