Multiple sync conflicts when writing text files

I’m taking notes in the program Obsidian. It saves the pages as basic markdown files automatically as you type.

Every time I make a new page/folder or even type in an existing page, once it syncs to my other device after a minute or so, a sync-conflict file is created.

image

I tried to make a simple folder titled “Test folder” and a page titled “Test page” to demonstrate how this manifests in Obsidian, which shows the folder structure of markdown files in the sidebar. Here’s the same files in File Explorer.

image

Unfortunately, this isn’t just a problem in Obsidian. I’ve tried taking notes in even simpler programs, and if I save my file at the wrong time, it’ll create a duplicate. It’s only a problem here because it messed with the file structure of my Obsidian Vault.

If I were to guess at what the problem is, I think these conflicts arise because Syncthing can’t keep up syncing to my other device as I type in real time. I’m not sure about the finer details of what exactly’s going on here, but I’m sure someone here does.

I’m using Synctrayzor and I notice there’s an insane amount of Advanced Options I could change, but I’m not sure if any of them would help my situation.

Just synchronising stuff that changes in real time shouldn’t be an issue, as long you don’t change the same files on different devices simultaneously. I myself sync a lot of things that undergo constant changes with no problems.

How is Obsydian structured specifically? If it’s just a set of markdown files, which you then edit on one device at a time, then you shouldn’t experience such conflicts.

What are the devices involved exactly? If possible, please post screenshots showing the Web GUI on both sides, including Syncthing version information. Also, if Android is involved, there may be issues by definition.

My problem isn’t specific to how Obsidian works (which is just a set of markdown files), I had this problem when typing and saving stuff in a plain text editor (like Typora).

Here’s a screenshot of the GUI on my PC.

I’m not sure if the info I censored was worth censoring, but I did it just in case.

The device I’m syncing with is a pi 3 (the one blocked out in red), and it wouldn’t be very easy to get a screenshot of that, so I’d like to avoid that if at all possible.


I was actually messing around in Obsidian settings to get it configured properly, and I was notified of a sync conflict (as it saves the settings of that particular vault in the same directory as the markdown files).

Here’s my “Recent Changes”, where a sync conflict is identified, in case this helps.

What is the filesystem on that device? Is it something normal, uncommon (e.g. NTFS on Linux) or funky (e.g. FAT)?

Do you actually perform any file operations there, or is its role purely to store the files?

Have you tried to just compare some of those conflicted files with their counterparts and see what exactly differs?

I’m storing my files on an NTFS 128gb flash drive on my pi and my Windows install uses NTFS.

The files are just stored on that device.

And when I check these conflicting files, they’re all various points of when I saved. So I can do down a list of sync-conflicted files and basically figure out when I typed each paragraph based on the timestamps and missing blocks of text.

Probably this doesn’t retain permissions and mtimes in the expected manner. Try setting “ignore permissions” and maybe a modtime window of 1s or so on the Pi side.

Also, is there any particular reason for using NTFS instead of a more native file system like EXT4 or such?

Changing it to “Ignore permissions” seems to have worked. I’ll report back if the minor changes I did to test this fix didn’t actually work.

As for why I’m using NTFS, there’s no real reason. I just formatted it on my Windows machine and stuck it in my Pi. If I do end up having similar problems down the line, I’ll consider formatting it to ext4.