devblog
authorJoey Hess <joeyh@joeyh.name>
Tue, 3 Aug 2021 21:14:06 +0000 (17:14 -0400)
committerJoey Hess <joeyh@joeyh.name>
Tue, 3 Aug 2021 21:14:06 +0000 (17:14 -0400)
doc/devblog/day_640__finally_dealt_with_clock_skew.mdwn [new file with mode: 0644]

diff --git a/doc/devblog/day_640__finally_dealt_with_clock_skew.mdwn b/doc/devblog/day_640__finally_dealt_with_clock_skew.mdwn
new file mode 100644 (file)
index 0000000..363ceb9
--- /dev/null
@@ -0,0 +1,20 @@
+I've been unsatisfied with git-annex's handling of clock skew since day 1.
+Since it relies on timestamps, it needs clocks to be synchronised across
+users, at least to a reasonable extent. A clock in the far future or distant
+past could potentially confuse git-annex a lot. Vector clocks felt like
+the right kind of solution, but also wrong somehow.
+
+I've finally cracked it! See [[todo/git-annex_branch_clocks]] for the
+details, but in summary, git-annex will be able to detect clock skew
+and fall back to vector clocks, but will otherwise continue to use
+timestamps for their benefits over vector clocks
+(ie, having some idea about what order disconnected events actually occurred,
+to the extent physics makes that possible).
+
+That is mostly implemented, only needs some more testing and cleanup before
+merging.
+
+----
+
+Today's work was sponsored by Graham Spencer 
+[on Patreon](https://patreon.com/joeyh)