Conflict Resolver reports file as "Modified By" wrong peer

Yeah, but B didn’t make those hundreds of changes – only 15. Many of the alleged changes on B are reported as being made in like 2003-2008, which is a decade before B even existed!

How is that possible?

And how come that there is no “Revert Local Changes” button on B?

OK I guess this is due to B not being set up as “Receive Only”. Only then, a “Revert Local Changes” button would be present, correct?

For the rest, I shall provide screenshots asap because I think it is very strange.

Yes

1 Like

Here are some screenshots.

First, PC “A”, where the folder “P…” is set up as Send Only:


OK, the folder is out of sync. I get that, since I have added/changed those 35 items on PC “B”. The items are also listed correctly when I click on the “35 items, ~190 MiB” text, and they can be overridden, remotely. All clear so far.

But then, the Remote Device H…W (this is PC “B”, where the folder “P…” is set up as Send and Receive). Syncthing lists 209 items as Out of Sync there (which allegedly have been modified by PC “B” when I click on the “209 items, ~179 MiB” text).

So why are 209 (mostly many years old) items “Out of Sync” remotely, but only 35 items “Out of Sync” locally?

Further, these 209 “Out of Sync” items have NOT been modified on PC “B”, ever. And even if they should have, I’d like to override the changes, but that does only seem to be possible for the 35 “Out of Sync” items, but not for the 209 “Out of Sync” items.

Second, PC “B”, where the folder “P…” is set up as Send and Receive:

The synced folder “B” is “Up to Date” here. But how can it be up to date when there are 244 “Out of Sync” items (or 35 “Out of Sync” items?) remotely?

The 244 Out of Sync items seem to be mostly the same as the ones listed on PC “A”, however here, they allegedly have been modified by PC “B”.

The synchronization is set up brand new between only these two devices “A” and “B”.

Can anybody make sense of this?

There are a few inconsistencies here indeed: On B it shows that A has 245 out of sync items, while A itself shows just 35 out of sync items. The 245 items are almost consistent with the difference of local vs global state shown on A. On the other hand B thinks it is up-to-date, while A reports it is out-of-sync. Were there any crashes/sudden shutdowns on A? It looks like its database is in a bad state.

There were no crashes, and this basically has been the state after the new sync setup and first scan immediately.

How could this happen – and is there anything I can do to fix this?

It still incorrectly does think so, while there are currently 28 items “Out of Sync”, and correctly reported so on PC “A”.

Please note that this synchronization already has been set up completely new in Syncthing – albeit with the folder contents on “B” from the previous synchronization.

Will I have to also delete and re-sync the entire folder contents on B now, in order to fix this?

You removed the folder in the Syncthing UI on both sides and then re-added it and the same problem occurred again? If yes that would be “great”, as in there’s a good chance to find the root cause. If so, please do it again (remove and readd folders) and run Syncthing with STTRACE=db environment variable. This will produce huge logs (easily GiBs), so that’s not a defect but expected. Then please share those logs (privately if you want, e.g. by sending a link to the upload location by private message here on the forum or email).

1 Like

Thanks @imsodin, I don’t think it is the “same” problem, although probably similar.

I hoped that this would be a known issue (or identifiable error on my side), and easily fixable :o

I will try and do as you say nevertheless

What kind of information do these logs contain? I’m asking because even some of the file names contain confident c*mpany information which I wouldn’t really be able to share :o

It will contain all the filenames. However you can fix that before sharing let’s say one of the problematic files is named “foo/bar”, you can run the following to narrow down the log and redact the filename: grep "foo/bar" logfile | sed -i 's|foo/bar|redactedfile1|g' > lofile-redacted. And in addition please also send grep INFO logfile > lofile-info - that should be reasonable short, i.e. you can just look over it manually to obfuscate sensitive info.

Waaaahh, sorry this goes way over my head, being a relatively simple Windows user :open_mouth:

I think I will have to delete the physical folder as well on B and re-start from scratch!

On Windows, I would suggest downloading Notepad++ or Sublime Text, and then using the Find and Replace function to redact the problematic filenames. Sublime Text will probably do better (i.e. it will not freeze) when dealing with giant text files.

The problem is, there are tens of thousands of such file names, and there is no pattern to the naming. There is no possible way to make sure that the c*mpany is not identifiable afterwards.

OK, I have now klicked the Override Changes button on PC A.

The left half according to the two screenshots above is now reported as “Up to Date” on both PCs, but in the right half, the state is still the same with about 200 alleged “Out of Sync Items”.

I will now remove the synchronization on both sides from Syncthing, delete the sync folder on PC B, and then restart the synchronization from scratch.

Let me know if there’s anything special I should look out for.

Thanks!

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.