syncthing icon indicating copy to clipboard operation
syncthing copied to clipboard

Sync status stays at 'Syncing xx%" when remote device pauses the folder.

Open hireworksltd opened this issue 1 year ago • 3 comments

What happened?

Example: Just 2 syncthing devices sharing a single large folder.

Hi all,

Been seeing an issue recently whereby if, with large folders (5000+ files), syncthing is in the process of syncing the folder and then the folder is paused on the remote device, the local device will continue trying to pull the out of sync files and stay in "Syncing xx%" status instead of going to "Out of Sync". It does eventually get there, but on lower powered devices it takes a very long time.

I've worked around this in: https://github.com/hireworksltd/syncthing/tree/remotefolderpaused-test but I'm not completely familiar with the codebase and this seems like it could be a pretty expensive check to make if there are a lot of devices connected.

Any advice welcome!

Thanks so much, Jon

Syncthing version

v.1.27.9

Platform & operating system

Linux amd64

Browser version

No response

Relevant log output

No response

hireworksltd avatar Sep 06 '24 10:09 hireworksltd

Related: https://forum.syncthing.net/t/folders-paused-but-uploading-still-going-on-and-stalled-download/17172.

tomasz1986 avatar Sep 08 '24 10:09 tomasz1986

Ah yeah either I am missing something, or our puller is indeed completely ignorant regarding remote folders being paused. Thanks for sending the patch, just the description would have just left me confused (and admittedly disinterested, being slow on slow devices isn't something I care about overly strongly - this is worse than that imo). The puller is "so ignorant", that it shouldn't even matter if the pausing happens during a sync. As far as I see even if the remote is paused from the get-go, we will still attempt to sync all outstanding files from it. We simply don't care if the remote is actually ready to sync, we only check that the remote has the file according to our database and that we have a connection to it. And as such do a truckload of BEP back and forth, all resulting in an error response from the remote.

I don't have time right now to check this (test), but given you solved your problem with that patch I think we can consider it confirmed. There's no performance issue with your patch, just a few mechanics/structure issues (could be simpler). If you want to contribute the patch and work those issues out, please file a PR. And if you'd prefer not to (though you'd be very welcome to :) ), please say so too that someone else could pick it up.

Related: https://forum.syncthing.net/t/folders-paused-but-uploading-still-going-on-and-stalled-download/17172.

I'd say probably unrelated. The forum topic describes how actual progress on file/network transfer still happens after pausing. While I believe the ticket here describes that nothing like this is happening, it's purely doing busywork without progress until finally being idle again (and out-of-sync). @hireworksltd Could you please confirm/deny that's the case for you?

imsodin avatar Sep 15 '24 18:09 imsodin

Many Thanks Simon. Happy to open a PR and work on this.

Can confirm that is the case RE: doing busywork without progress.

Best, Jon

hireworksltd avatar Sep 17 '24 19:09 hireworksltd

Dear @hireworksltd team, Jon Lawrence,

Recall from 2024-11-22: It is possible to migrate the personal account to organization?

  • https://github.com/hireworksltd/syncthing/commit/d4439dc3dd789e4f20c20308aacfac3b51108a24#commitcomment-149389247

Your company can not have a personal account but an organization and it is free.

You must to respect GitHub TOS:

  • https://docs.github.com/en/site-policy/github-terms/github-terms-of-service#3-account-requirements

You have two possibilities:

  • Converting
  • Rename / Create an organization / Transfer repositories (no lost, redirections are here)

Important to know, there is no lost, and GitHub adds redirections after a transfer, for example:

  • https://github.com/libreswan has been converted
  • https://github.com/exiftool has been converted
  • https://github.com/redorescue has been converted
  • https://github.com/nerzhul/ocsms -> https://github.com/nextcloud/ocsms
  • https://github.com/tigaseinc/tigase-server -> https://github.com/tigase/tigase-server
  • https://github.com/boothj5/profanity -> https://github.com/profanity-im/profanity
  • https://github.com/asciimoo/searx -> https://github.com/searx/searx

Thanks in advance.


Converting:

  • https://help.github.com/articles/converting-a-user-into-an-organization/

It is possible to rename this account and create the organization and move/transfer the repository to the organization.

Rename account:

  • https://docs.github.com/account-and-profile/setting-up-and-managing-your-personal-account-on-github/managing-user-account-settings/changing-your-github-username

Create an organization:

  • https://help.github.com/en/github/setting-up-and-managing-organizations-and-teams/creating-a-new-organization-from-scratch

Transfer a repository:

  • https://help.github.com/en/github/administering-a-repository/transferring-a-repository

Like:

  • https://github.com/syncthing
  • http://github.com/gnome
  • http://github.com/kde
  • ...

Neustradamus avatar Nov 27 '25 03:11 Neustradamus