dvcs-autosync notes after first use

Dieter Plaetinck dieter at plaetinck.be
Sun Sep 9 18:55:13 CEST 2012


On Thu, 30 Aug 2012 17:20:15 +0200
Thomas Koch <thomas at koch.ro> wrote:

> - It should use the namespace dvcs-autosync for folders in .config, .local 
> rather then the generic autosync which would also be consistent with the 
> package name.

+1

> - It should call logrotate from time to time to clean up old log files

isn't this the user's job? just like root should set up logrotate to keep /var/log clean so that system daemons don't have to worry about this.

> - Pidfiles should be written somewhere in /tmp. It seems there's no standard 
> for a /run/ folder for users?!?

maybe $XDG_DATA_HOME/autosync ($HOME/.local/share/autosync). but does this even need a pid file?



my main gripe with dvcs-autosync is that it is AFAICT simply impossible to implement without being vulnerable to race conditions, bogus git errors and potentially data loss scenarios.
see http://lists.madduck.net/pipermail/vcs-home/2012-March/000764.html for the full breakdown.

I think (?) git-annex (even with assistant) is able to avoid this mess because it can atomically add content to the git index (i.e. when adding files to git, you can be sure they don't change, cause they are either symlinks, or git-annex metadata afaik).  AFAIK Joey has put a lot of thought in robustness wrt file modifications/deletions/... during git annex operations. IIRC the worst thing with autosync is, it can delete your file if you delete and re-add it yourself quickly.

Dieter


More information about the vcs-home mailing list