I tried many sync solutions (Syncthing, SparkleShare, Resilio, Mega, Seafile, NextCloud) and I almost always experienced some kind of data corruption.
Syncthing was no exception.
I could not reproduce the problem, so I never made a bug report.
The corruption was something like this:
- I recursively renamed all files from a folder from uppercase to lower case. Suddenly I duplicated files, uppercase and lower case.
- I did not use a device for a long time (a year or so). After switching the old device on, it "recovers" deleted files.
- I put a git repository into a sync folder. It stopped working after a while.
This, however, could be a solved problem by now, as it is 2+ years ago, that I tried syncthing.
Am I the only one with that kind of Problems?
Has the situation improved?
I tried Syncthing many years ago and had similar issues. I was going to try it again a few months ago but memory usage and initial scam speed weren't good.
Resilio worked pretty well for me for years but now gets stuck with a weird SQLite error
I really wanted to love syncthing a lot, I loved the idea, the interface, everything. But I would always get a number of errors on some files for whatever reason that I would have to then manually fix and sometimes I couldn't even do that. But it has been a few years, so maybe it's time to try again...
I've been using resilio sync for years without corruption. If you're seeing corruption across half a dozen different systems, I wonder if you might have a hardware problem.
If a synchronization software can't handle a git repository, what else is it not able to handle?
After all, a git repository is just a bunch of files and in my case not particular big once.
It’s a consistency problem. Syncthing provides reasonably solid single file consistency. Git repos and anything else that requires multi-file consistency is trickier, since Syncthing doesn’t know about the internal consistency requirements.
If you use Syncthing peer-to-peer and/or have concurrent modifications to different peers before a full sync, you can run into problems. It’s not really designed for that, it’s optimised from the single user sharing individual files on multiple devices case.
Doing anything better here is incredibly hard in a peer-to-peer system on the level of abstraction that Syncthing operates on.
I think renames might be/may have been problematic because it tries to be smart and handle them efficiently. If it did the naive thing of delete followed by creation, consistency would be better, but performance would be worse.
The corruption was something like this:
- I recursively renamed all files from a folder from uppercase to lower case. Suddenly I duplicated files, uppercase and lower case.
- I did not use a device for a long time (a year or so). After switching the old device on, it "recovers" deleted files.
- I put a git repository into a sync folder. It stopped working after a while.
This, however, could be a solved problem by now, as it is 2+ years ago, that I tried syncthing.
Am I the only one with that kind of Problems? Has the situation improved?