Again strange sync problems with 99%

We had that before, and on the remove site we then had a button to allow some override: https://forum.syncthing.net/t/remote-device-always-shows-syncing/23575/47

But that button does not appear and still, we see the dreaded “Syncing (99%…)” problem.

As a first try to fix this, I touched all files that are in the out-of-sync list, but that did not change nothing.

Then I deleted those files after backing them up.

That indeed removed the original problem, but Jellyfin trickplay JPGs are shown out of sync. I deleted them too locally and rescanned and now it looks like this:

And it now shows: Syncing (95%, 0 B)

The setting is like this: Local is on “Send Only” and remote is on “Receive Only”.

It should JUST sync my stuff, but it constantly refuses again and again with differing situations, always with 99% or less.

What can we do?

I just want to push my local stuff.

Please provide more information the devices in questions (e.g. the operating systems, the hardware involved, etc.) and Syncthing itself, especially the version number. Full screenshots of the web GUI from both sides would be welcome as well.

The 0 B size would indicate that these are deletions that cannot be synced.

The local side is a Mac Mini M1, latest macOS, latest macOS bundle version of Syncthing (2.0.3), remote is a Docker Container on UNRAID, version 2.0.7

But we had the same issue several times with other versions.

I know no way to cut private data out of the screenshot and my iPad is not here, so no full screen shot.

The screenshot above was from my tests that I described. Now it is back to the original situation:

The whole thing is really the same as in Remote Device always shows "Syncing" - #47 And there are lots of screenshots.

This time, we don’t have that button on remote this fix things.

I just need a PUSH IT NOW button or command :slight_smile:

You don’t need a button, you need to look on the receiving side “failed items” or in the log and see why those things aren’t able to sync.

I asked the remote site to find and look into the log file. The files are indeed not available on the remote site!

But really, the remote side is receive only, it should just accept what I am sending.

And such a button would help :wink:

Last time, only the “revert” button could fix the situation - but it is not available now.

P.S. Hopefully, the button is not gone because of Version 2 … :open_mouth:

If the folder is set to “Receive Only” and you make local changes that result in it having different content than what is on remote devices, you should see a “Revert Local Changes” button for it.

The same is true if the folder is set to “Send Only” and you make changes on other devices that make their folder content different. The button will then be called “Override Changes”.

It’s quite difficult to have a proper view of the situation based on the information provided. The cropped screenshots aren’t really useful. We need to have a full picture. If you cannot share folder names, paths, etc. for privacy reasons, you could use a piece of graphics editing software (which can even be a very basic one) and obfuscate what you don’t want to share, leaving the rest of the GUI visible.

Many thanks, but such edited screenshots are already there!

In Remote Device always shows "Syncing" - #4 by syncthem

It looks exactly the same, just the numbers are different now, of course - 121 items with ~3.36 MB and “Syncing (99%, 3.36 MiB)”.

The version number of syncthing changed and of course the total amount of files.

But otherwise, it is exactly the same as before!

But now we don’t see a “revert” button on the remote site and I don’t see a “override changes” button on the local site (at least not on the regular Syncthing webpage where Devices and Folders are listed).

Hopefully, the remote site can locate the logfile and give some insight into the problems that Syncthing sees. I don’t know when I will get a reply.

We need to see the GUI on both sides.

There has been one change regarding the buttons, as now they are only shown when folder isn’t doing any other activity like syncing or scanning. If your folder is stuck in a “syncing” state forever, then you may need to break it (e.g. by pausing the remote device) to make the “Revert Local Changes” button appear.

Please note that such a persistent state of syncing with no activity indicates that something is very wrong, and reverting local changes is only a temporary workaround. You will probably get hit by the same issue again if you cannot find the culprit that causes the problem in the first place. :sweat_smile:

1 Like

OK, many thanks!

I will try to conference with the remote site about this and report back!

The remote log files show those:

”syncing: no connected device has the required version of this file”

That’s irritating.

There is no “required version”, the right version is just that from my local “send only” folder.

One option: syncing: no connected device has the required version of this file - #8 by Cheer1

Another option: How to delete file with syncing: no connected device has the required version of this file

1 Like

One option: syncing: no connected device has the required version of this file - #8 by Cheer1

This is about some trash folder to added, but this is not the case here - only valid and required files are out-of-sync!

Another option: How to delete file with syncing: no connected device has the required version of this file

This is about changing the files (in that case nullifying them), scan again and then replace with the real content.

This is an idea I will try!

But of course it would be more easy to have a button or command to simply use the current local “versions” of those file.

And there are no other devices that could have changed content.

I will try and report back, many thanks!

I tried many things.

First, I nullified the out-of-sync files, but that did not help - it just got 121 files, 0 B

I then removed all those files, and got a new situation with only 16 files, 0 B

I noticed that apparently, Syncthing expected those 16 empty files to exist, but they did not exist - so I used touch to create them locally. (BTW, in the list of out-of-sync files, not 16 but only 10!)

But after a Rescan, the situation was still the same: Syncing (95%, 0B) And the same list of 10 files shown when clicking on the 16 out-of-sync items.

I then Paused and Unpaused the Remote Device (locally), to avail.

No now, I have 16 out-of-sync items that show up as 10 files and I cannot do nothing with them.

I created them locally, with 0 bytes, as expected but no change.

I see no option anymore!

I don’t care what the remote side thinks or expects - I just need a way to push the local data or to overrule the remote side (strange) ideas and expectations.

What can I do?

My frustration boundary is reached and crossed.

And let me let you, I really hate that the webpage constantly closes the local folders and remote devices in the overview!

I pause, unpause or scan something and Bammmmmm, the website closes it so that i need to click again to open it again. Endless times.

Finally, I could talk to the remote site and we tried to remove affected folders and files from the REMOTE - so that they should be re-uploaded again.

And that worked!

But this should NOT be required! The remote state is totally unimportant and there needs to be a way to reach that, without needing to delete files or folders on the remote site. I cannot normally see, check, watch or modify things on the remote site and that should not be required for such a receive-only / send-only situation.

That is ridiculous.

It keeps and keeps happening!

Right now, I have 23 items that are out-of-sync.

When I delete them locally, both sites are Up to Date after a rescan.

When I add the files again, they pop up as out-of-sync again.

I tried pausing both the local and remote devices, I tried to touch the files to give them a newer date, but everything I tried did not change the situation.

As I said, I have no control over the remote site and cannot even see if the revert button appeared or not - and I cannot constantly bug the remote site for such problems.

The Syncthing sync algorithm is broken!

A very long time ago in 1.x times I had a similar effect which was solved by removing some special characters from the filename. Unfortunately I can’t remember what these characters were. So if the names of you files contain some characters like '-- ’ it could be a try to test if the behavior changes when the filename is more simple. You need to rename your files before sync, of course.

Thanks, I read all topics about similar problems already.

I don’t have such files!

I strictly use ASCII Naming in upper case for the directories and the JPGs in question are simply 0.jpg, 1.jpg, 3.jpg, … and so on.

Syncthing needs a Button named “Just upload local content” or something similar.

The only explanation I have is, that the remote Jellyfin installation created it’s own versions of files.

But still, the folder is receive-only and should just take my local version!

Please understand that we need to get the facts together about your situation in order to help. Whether caused by a bug in Syncthing, by some external component, or by wrong usage - we need more details to tell it apart and provide advice. Please do provide the screenshots, even redacted, with all relevant details visible. Especially the folder in question expanded, as well as the respective remote device section. And from both sides, clearly labeled which device it’s from.

I’m not sure about what you call local or remote and on which side what unexpected or unwanted behavior shows up. It may all make sense to you, but from your written description, it’s not at all clear to us.

What I think you want to do: Device A is your “local” instance which you usually interact with. Device B is remote, maybe at a friend’s house where you don’t have direct access. You want to use device A solely to control what files device B has, even if your friend accidentally makes some modifications. It’s only about sharing between these two, no other devices involved.

In this scenario, you should better set device A to send-only, but keep device B at the default send & receive. When accidental modifications happen on B, then you will get the button to override them on your side (A) and there’s your desired “just push my versions” function.

Making the remote (B) device receive-only is a measure for that device’s operator to protect others from noticing any local modifications. It’s a conscious mechanism resulting in a “revert” button on their side to pull the unchanged versions from you or anywhere again. But it results in your local side (A) never hearing about the changes.

There is no need for belts and suspenders here, as in combining a send-only and receive-only folder. The send-only on device A makes sure that whatever changes any other device makes are not pulled and applied locally. And it allows to override (push) changes back to the other devices, making the local version current again for all. Without hearing about any changes from B (because it’s receive-only), there will be nothing to block from applying locally and no override button. It’s basically already stopped on the remote end, with them having to act on the unwanted changes.

I hope that clears things up for you. Of course, it might as well be some odd behavior / bug that we haven’t identified yet. In that case, understanding your situation is even more important so we can find the root cause and fix it.

3 Likes