Change from folder "send only" to "send and receive" deletes files


#1

hi all.

I’am using syncthing since years but now this is comming up:

I have device A, B and C. Folder on A is on “send only”. Others (B,C) “send and receive”

  1. 2 weeks ago I set Folder on device A to “send only”
  2. I added some files to C, and they where synct to B, but not to A (as expected)
  3. C is offline today, B online.
  4. Today I changed (A) from “send only” to “send and receive”

Now files not on A are deleted on B, (which where synct from C before)

Is this the desired behavior? I would expect that A is updating the files from B, not deleting them on B?


(Jakob Borg) #2

I’d expect that too, unless you hit override.


#3

Yes, I did hit this button. Major fail! Now I remember that there was a button. I just hit it, barley reading it. Whats the text on it? “Override Changes” ?

I expected B is now allowed to overwrite A, but this was not the case. Or does it mean, that A now has the permission to overwrite all files on B? For a non native speaker this is highly unclear.


#4

The button “Override Changes” is only displayed, when the folder is “send only” and another device send changes to this device. Clicking that button will override the changes received by other devices. If that changes were new files, that files will be deleted.

https://docs.syncthing.net/users/foldertypes.html?highlight=override


#5

I’ll admit that even when I repeatedly read the documentation I’m unable to remember the effect when I see that button, so I have to carefully look at the documentation again - every time.


#6

Ok, my fault. But that button text should be changed.

There was a discussion about this two years ago: What is the purpose of "Override Changes" button?


(Jakob Borg) #7

That button means “make everyone have the same stuff I have”. I don’t know how to express that clearer.


(Kluppy) #8

You the button Overides Changes… What else could it mean but resend the local version to override external changes.

If it was going to write to the local node it wouldn’t be overriding “changes”. It would be updating the local state.

“Override Remote” might work but even then I think there would be calls to make it “Override Remote Changes” which is just too long IMHO.