3 ms·
Thanks for sharing. I liked the short video. These have been around for a few years. Wonder what people built with them since. Anyone know of any popular distr
by rdtsc 2y ago
Thanks for sharing. I liked the short video.
These have been around for a few years. Wonder what people built with them since. Anyone know of any popular distributed systems using them nowadays? (I noticed the company the author mentioned shut down https://medium.com/@MeetLima/this-time-its-goodbye-5573a97be7d4 https://medium.com/@MeetLima/this-time-its-goodbye-5573a97be...)
As an additional resource I liked the description of ITC by Fred Hebert: https://ferd.ca/interval-tree-clocks.html https://ferd.ca/interval-tree-clocks.html. He is the author of the wonderful Learn You Some Erlang book. There is an ITC library he maintains as well: https://github.com/ferd/interval-tree-clocks https://github.com/ferd/interval-tree-clocks, started by Paulo Sergio Almeida.
- catwell 2y agoLima did not use ITC in its product anyway, we used classic version vectors. We considered them for future evolutions but never implemented it. It's funny that Fred Herbert's use case was a "peer-to-peer Dropbox", because it is basically what Lima was. I don't know many systems that use ITC. Version vectors are simpler and sufficient in most cases. One of the authors of the original paper mentioned in a later presentation (https://cbaquero.github.io/web/pdf/SDLtime2021.pdf https://cbaquero.github.io/web/pdf/SDLtime2021.pdf) that they were used for tracing, in particular in a 2015 system called Pivot Tracing.
- rdtsc 2y agoThank you for answering, That's very interesting! Yeah, I recall being excited about ITCs, but it doesn't seems like they made their way into too many practical distributed systems.
- catwell 2y agoAlso I had forgotten but here is a more recent follow-up to Fred Hebert's post: https://ferd.ca/a-bridge-over-a-river-never-crossed.html https://ferd.ca/a-bridge-over-a-river-never-crossed.html