Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Vector clock
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
==History== Lamport originated the idea of logical [[Lamport clock]]s in 1978.<ref name="Lamport 1978">{{Cite journal | last1 = Lamport | first1 = L. |authorlink1=Leslie Lamport| title = Time, clocks, and the ordering of events in a distributed system | doi = 10.1145/359545.359563 | journal = [[Communications of the ACM ]]| volume = 21 | issue = 7 | pages = 558β565| year = 1978 | s2cid = 215822405 | url=http://research.microsoft.com/users/lamport/pubs/time-clocks.pdf}}</ref> However, the logical clocks in that paper were scalars, not vectors. The generalization to vector time was developed several times, apparently independently, by different authors in the early 1980s.<ref name=Schwarz>{{cite journal |last1=Schwarz |first1=Reinhard |last2=Mattern |first2=Friedemann |title=Detecting causal relationships in distributed computations: In search of the holy grail |journal=Distributed Computing |date=March 1994 |volume=7 |issue=3 |pages=149β174 |doi=10.1007/BF02277859|s2cid=3065996 |url=https://nbn-resolving.org/urn:nbn:de:hbz:386-kluedo-4006 }}</ref> At least 6 papers contain the concept. <ref>{{cite web |last1=Kuper |first1=Lindsey |title=Who invented vector clocks? |url=https://decomposition.al/blog/2023/04/08/who-invented-vector-clocks/ |website=decomposition β al |language=en |date=8 April 2023}} The papers are (in chronological order): * {{cite book |last1=Fischer |first1=Michael J. |last2=Michael |first2=Alan |title=Proceedings of the 1st ACM SIGACT-SIGMOD symposium on Principles of database systems - PODS '82 |chapter=Sacrificing serializability to attain high availability of data in an unreliable network |date=1982 |pages=70 |doi=10.1145/588111.588124|isbn=0897910702 |s2cid=8774876 }} * {{cite journal |last1=Parker |first1=D.S. |last2=Popek |first2=G.J. |last3=Rudisin |first3=G. |last4=Stoughton |first4=A. |last5=Walker |first5=B.J. |last6=Walton |first6=E. |last7=Chow |first7=J.M. |last8=Edwards |first8=D. |last9=Kiser |first9=S. |last10=Kline |first10=C. |title=Detection of Mutual Inconsistency in Distributed Systems |journal=IEEE Transactions on Software Engineering |date=May 1983 |volume=SE-9 |issue=3 |pages=240β247 |doi=10.1109/TSE.1983.236733|s2cid=2483222 }} * {{cite book |last1=Wuu |first1=Gene T.J. |last2=Bernstein |first2=Arthur J. |title=Proceedings of the third annual ACM symposium on Principles of distributed computing - PODC '84 |chapter=Efficient solutions to the replicated log and dictionary problems |date=1984 |pages=233β242 |doi=10.1145/800222.806750|isbn=0897911431 |s2cid=2384672 }} * {{cite journal |last1=Strom |first1=Rob |last2=Yemini |first2=Shaula |title=Optimistic recovery in distributed systems |journal=ACM Transactions on Computer Systems |date=August 1985 |volume=3 |issue=3 |pages=204β226 |doi=10.1145/3959.3962|s2cid=1941122 |doi-access=free }} * {{cite tech report |last1=Schmuck |first1=Frank B. |title=Software clocks and the order of events in a distributed system |date=November 1985 |type=unpublished }} * {{cite book |last1=Liskov |first1=Barbara |last2=Ladin |first2=Rivka |title=Proceedings of the fifth annual ACM symposium on Principles of distributed computing - PODC '86 |chapter=Highly available distributed services and fault-tolerant distributed garbage collection |date=1986 |pages=29β39 |doi=10.1145/10590.10593|isbn=0897911989 |s2cid=16148617 }} * {{cite journal |last1=Raynal |first1=Michel |title=A distributed algorithm to prevent mutual drift between n logical clocks |journal=Information Processing Letters |date=February 1987 |volume=24 |issue=3 |pages=199β202 |doi=10.1016/0020-0190(87)90186-4}} </ref> The papers canonically cited in reference to vector clocks are Colin Fidgeβs and [[Friedemann Mattern]]βs 1988 works, <ref>{{cite conference|first=Colin J.|last=Fidge|date=February 1988|title=Timestamps in message-passing systems that preserve the partial ordering|book-title=Proceedings of the 11th Australian Computer Science Conference (ACSC'88)|volume=10|issue=1 | editor = K. Raymond|pages=56β66 | url = http://zoo.cs.yale.edu/classes/cs426/2012/lab/bib/fidge88timestamps.pdf | access-date = 2009-02-13}}</ref><ref>{{cite conference|title=Virtual Time and Global States of Distributed systems|book-title=Proc. Workshop on Parallel and Distributed Algorithms|first=Friedemann|last=Mattern | editor-last=Cosnard | editor-first=M. | place=Chateau de Bonas, France |date=October 1988 |publisher=Elsevier | pages=215β226}}</ref> as they (independently) established the name "vector clock" and the mathematical properties of vector clocks.<ref name=Schwarz/>
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)