I’m having an issue with Syncthing where files and folders in one of my shared folders is not syncing correctly across my devices. Some files appear on one device but not on the other, and no error messages are shown in the Syncthing GUI and the missing files are not appearing in file versioning. The folder status on both devices appears to be “Up to Date,” even though it’s clearly not. The ignore pattern is also blank.
Here’s the detailed description of my setup and what I’ve tried so far:
Folder Configuration
Path: The folder in question is located at C:\Users\<user>\Documents on one device and /Users/<user>/Documents on another.
Type: The folder is set to “send/receive.”
Advanced Settings:
Fs Watcher Enabled is checked with a delay of 10 seconds.
Ignore Patterns is completely empty.
Rescan Interval is set to 3600 seconds.
Other settings like Auto Normalize and Max Concurrent Writes are left at their defaults.
Screenshots
I’ve attached screenshots of the following for reference:
Syncthing tray showing the missing remote device folders/files greyed out
Folder settings on Device A and Device B.
File comparison between the two devices using a file manager.
The “Ignore Patterns” configuration for the folder.
Let me know if there’s any additional information I should provide or if anyone has experienced a similar issue. Any advice or troubleshooting tips would be greatly appreciated!
Thanks in advance for your help!
You can see all the folders / files that are missing. They’re greyed out in the Syncthing Tray tool I’m using.
✔ 22:16:50 /Users/username > brew info syncthing
Warning: Treating syncthing as a formula. For the cask, use homebrew/cask/syncthing or specify the `--cask` flag. To silence this message, use the `--formula` flag.
==> syncthing: stable 1.28.1 (bottled), HEAD
Open source continuous file synchronization application
https://syncthing.net/
Installed
/opt/homebrew/Cellar/syncthing/1.28.1 (25 files, 25.8MB) *
Poured from bottle using the formulae.brew.sh API on 2024-12-22 at 09:46:00
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/s/syncthing.rb
License: MPL-2.0
==> Dependencies
Build: go ✘
==> Options
--HEAD
Install HEAD version
==> Caveats
To restart syncthing after an upgrade:
brew services restart syncthing
Or, if you don't want/need a background service you can just run:
/opt/homebrew/opt/syncthing/bin/syncthing -no-browser -no-restart
==> Analytics
install: 2,027 (30 days), 4,994 (90 days), 24,162 (365 days)
install-on-request: 2,026 (30 days), 4,992 (90 days), 24,149 (365 days)
build-error: 10 (30 days)
Use the fs debug facility and see if anything useful appears in the log. Do the same with sync and scanner individually
The Syncthing database could have a problem on one side or the other. Use syncthing —-reset-database on both Devices to test this, the command will reset the databases, force a complete new scan, and recreate folder markers as necessary.
Something else weird is going on. Delete the shared Folder in Syncthing on both sides (don’t delete your files!), restart Syncthing on both sides, and reconfigure the Folder on both sides.
Thanks for the tips. I will try that. I have just doubled checked everything and folders, files, and the executable have correct permissions and all belong to the correct user.
So i tried the command to reset database. I also unshared the folders and deleted my .stfolder on both of the devices. I have not accepted my share on my other device yet I wanted to wait until it fully synced. You can see that the folder size on the synced folder is not equal to the folder size on my disk. Why is this happening? Seems like its not capturing all the files in the directory?
@chaos I added that everyone with full checks as part of my troubleshooting process here. That “Account Unknown” user is from an old user on my system that I don’t think I deleted correctly. This Account Unknown actually has caused issues for me in the past with SSH.
Is it possible that syncthing was only installed under my user account and not my global account?
The user account that owns the Syncthing processes is part of the Administrators group, which would normally keep file permissions from being an issue.
It also looks like you have two user accounts with very similar names, one with four characters and one with three. The four character version does not appear in the Security properties specifically, and the user account does not necessarily belong to the Everyone group. Would you mind adding the four character user to the folder and granting full control? It seems like a long shot to me but nothing else is coming to mind.
Thank you. Yes, I rolled back my version as described in the GitHub post:
…I found that replacing Syncthing 1.28.1 with the older version 1.27.12 resulted in SyncTrayzor reporting…
You can see that my state number is now closer to what is actually in my folder. However, my ignore pattern is still empty, so I’m not sure why they don’t match exactly.
Does this happen often? This is the whole point of Syncthing, and issues like this, which are difficult to diagnose, are quite frustrating. I spent a lot of time trying to resolve this bug. Syncing is the app’s main feature, and it’s essentially broken.
The numbers will never match exactly, because Syncthing won’t include its internal files and folders in the count. For example, those are the default folder marker (.stfolder) and the versions folder (.stversions) with their contents, and also all .tmp files which are still being downloaded.