From time to time Syncthing starts choking on a file. I have a very hard time fixing this - which makes me think the error is most likely on my side. This post should verify what I keep overlooking…
This weekend it was a file with root-permissions (*.pyc) while Syncthing was running with users permissions. I’ve ssh’ed to the machine and deleted the offending file but Syncthing did not recover. Nor did it after restarting the Syncthing itself.
I’ve added the mask *.pyc to the ignore-List (on all peers) but that didn’t help either. I’ve double and triple checked on all peers, but the file is not there anymore. Syncthing steadfastly refuses to ignore the vanished file…
As a last resort I’ve shut down Syncthing and removed it’s .config/syncthing/index-v0.11.0.db/-directory (read that somewhere here in the forums). To no avail. Syncthing was restarted, rebuilt its index and keeps insisting that there is a file it cannot sync. (I wonder where it got that information from…)
Setup:
Syncthing is always installed in the most current version (12.8 as of writing) - as are all peers. The problem has almost certainly nothing to do with different versions, although the sync is done between different systems (Unix, Linux, Embedded Linux, Windows, Mac).
I’m diligent in using as much 7-bit-ASCII as possible. The filenames should not neither be the source of the problem.
Question:
How should I proceed when this happens? Is there some other file which I could delete to force Syncthing to have a fresh look at the source files/directories?
Is there a F.A.Q. for this type of problem that somebody could point me to, I’d be most grateful.
Not in the logs. The GUI does. I’m not sure screenshots would help - except make me a little more believable…
Would it help if I deleted the whole .config/syncthing-directory? Or is there maybe a file I could delete without having to setup Syncthing from scratch?
You are right, of course. But after some hours of head scratching I get a little desperate…
I’ve just checked all the other machines - they are fine. So it’s just this one client - and it’s a test client anyway. I’ll just give it the night and see if it recovers. Sync is not always as fast as my patience is…
It sounds to me like once the file is deleted you need to stop all of the nodes at the same time otherwise it stays in their index and they continue to request it. Even after blowing away the db the other nodes request the file from the original one.
I am guessing because it sounds a lot like what can happen when adding a file to the ignore list once the other nodes know it exists.
I’ve waited for a day to give all machines (esp. those two) the chance to catch up, but that did not work.
Then I’ve done what kluppy suggested for all seven nodes that are syncing this directory. After that everything resynced and all nodes agreed on this file not being there anymore. All nodes are green again and working.
Marvelous!
Thank you to everybody involved! I’ve learned to a) keep my fingers off the index dbs, b) trust syncthing and c) take all nodes that have a problem with each other offline so as to give then the chance of a fresh restart.
I would change the topic to “Solved: What to do if a file has vanished on one side and nodes keep requesting the file from each other” if somebody can help me how to do this…