Rootyb

Read-only sync behavior: feature or bug?

Recommended Posts

First, I want to point out that I am not complaining. The way that read-only sync appears to be working is absolutely perfect for my needs.

That said, I'd like to know if it's behavior that is going to stick around, because it is working as intended, or be "fixed" someday.

My first thought with read-only syncing was that it would behave like this:

Shared folder has two files:

A, B

"Recipient" using the read-only secret gets those two files:

A, B

then deletes, say, B.

A

I assumed that BT Sync would sync the local copy back up with the "server" copy, leaving two files again:

A, B

Right now, it just leaves the local copy as-is (so it basically transfers each file one time).

This is *exactly* what I've been looking for in a sync app, to the point that I've been learning python to write my own that uses LFTP.

Is this how it's supposed to work? If not, can you please leave an option for this mode when you "fix" it? :)

Share this post


Link to post
Share on other sites

"read only" is essentially a "one way" sync.

So if Device 1 has a "full" secret and Device 2 has a "read-only" secret, any changes (additions / modifications / deletions, etc) made on Device 1 will be mirrored on Device 2, but any changes on Device 2 won't be mirrored back to Device 1

Share this post


Link to post
Share on other sites

Right, but that explanation doesn't cover what happens to Device 2 when its folder is changed. Right now, it stays changed. Even a read-only sync sounds like it would keep Device 2 matching Device 1 (but not Device 1 matching changes Device 2), if that makes sense.

Share this post


Link to post
Share on other sites

In a simple way, changes on recipient will not be propagated to other peers. It is very difficult to change file back, since it could lead to a very strange cases on recipient.

Share this post


Link to post
Share on other sites

Yes, essentially, BitTorrent Sync behaves this way:

On a device that is "read only";

A ) if you add a file/folder, it won't get replicated back to other devices.

B ) If you modify a file/folder, the file/folder won't get modified on other devices.

C ) If you delete a file/folder, the file/folder won't get deleted from other devices.

D ) If you modify a file/folder it will be overwritten with a copy from other full-access devices, only if/when it is next modified on one of those full-access devices.

E ) If you delete a file/folder it will only re-appear, if subsequent changes are made to the corresponding file/folder on another full-access device.

...so in essence, rather than a "read-only" device always being an exact "mirror" of a corresponding full-access device, instead a "read only" sync is about "ignoring" any changes on that "read-only" device.

Share this post


Link to post
Share on other sites

Thank you guys for saving a linux noob hours of figuring out how to properly create a one-way-one-time-sync (aka download a new file only once).

I've got files a pc A and tried to find a solution to let pc B download every new file and then process it. With a rsync sync solution (I guess you could log your downloads and exclude them from downloading again) it would download the file again because it only stays in the folder for about 5 seconds (there's an application permanently watching the sync folder on pc B).

Looks like BT Sync is my new favorite application!

Share this post


Link to post
Share on other sites

D ) If you modify a file/folder it will be overwritten with a copy from other full-access devices, only if/when it is next modified on one of those full-access devices.

E ) If you delete a file/folder it will only re-appear, if subsequent changes are made to the corresponding file/folder on another full-access device.

This is not my experience at all. At least not with 1.0.116.

D. If I mod a file on a RO machine, that's it, it never gets updated. I can modify the original on the RW and it doesn't overwrite the one on the RO machine.

E. If I delete a file on an RO machine, and then make a change to it on the RW machine it doesn't copy the new one back - it stays deleted.

Share this post


Link to post
Share on other sites

same as jmarshall up here

D/E doesn't overwrite/ replace files

this means readonly sync is too weak right now to be used as main sync solution, as I would never be sure if on RO/ mirror machine I have a proper full copy of all my files

till this is fixed, back to rsync I'm afraid :(

Share this post


Link to post
Share on other sites

same as jmarshall up here

D/E doesn't overwrite/ replace files

this means readonly sync is too weak right now to be used as main sync solution, as I would never be sure if on RO/ mirror machine I have a proper full copy of all my files

till this is fixed, back to rsync I'm afraid :(

It seems like that's your 'fault', rather then BTSync's - you have a machine that you've designated as read only, and then you're making changes on it. If you don't do that then it shouldn't get out of sync. And if you do accidentally make a change, undo the change or manually copy the deleted files back onto that machine.

Share this post


Link to post
Share on other sites
On 26.04.2013. at 8:02 PM, johnmarshall4 said:

This is not my experience at all. At least not with 1.0.116.

D. If I mod a file on a RO machine, that's it, it never gets updated. I can modify the original on the RW and it doesn't overwrite the one on the RO machine.

E. If I delete a file on an RO machine, and then make a change to it on the RW machine it doesn't copy the new one back - it stays deleted.

When can we expect fix to this problem? Current version is 2.3.0 and bug still exists.

Share this post


Link to post
Share on other sites

If you make changes on a RO node, in order to bring that node back in alignment with its "master", you'll need to select the "Overwrite any changed files" option in the RO folder's preferences.

Share this post


Link to post
Share on other sites
On 1/30/2016 at 3:42 PM, GreatMarko said:

If you make changes on a RO node, in order to bring that node back in alignment with its "master", you'll need to select the "Overwrite any changed files" option in the RO folder's preferences.

So, the the "Overwrite any changed files" option works essentially this way:

  • If it's ON: every change you made to files/folders (modification or delete) in local folder will be corrected soon from a "master" device
  • If it's OFF: you can change files/folders (modification or delete) and local folder will keep it this way. In this case it's effectively "one-time" sync mode.

Is it correct understanding or I'm missing something here?

Thanks in advance :)

Share this post


Link to post
Share on other sites
On 31.1.2016 at 0:42 AM, GreatMarko said:

If you make changes on a RO node, in order to bring that node back in alignment with its "master", you'll need to select the "Overwrite any changed files" option in the RO folder's preferences.

Thanks to your reply I know now that the "bug" I am fighting with for so long is actually intended. :-p

This is quite a problem for me. Is there a similar setting on Android - I couldn't find any.

I'm syncing a folder with my most important notes and stuff to my mobile devices, so I'm always able to access them, but I do not want them to make any changes. I'm using Jota for text file, however if I just type a small change into a file, the synchronization breaks - even if I discard the changes. Unfortunately this happens from time to time by accident. I didn't know for a long time that this was causing my sync issues. So I end up being somewhere and when accessing my notes I realize I'm missing the latest information.

Even worse, I didn't even find a way to easily fix the synchronization again. Turning on selective sync, deleting all files, rebooting device, turning off selective sync again, updating the file on a read/write device, ... - still those files will not get synced any longer. So every time this happens I need to disconnect the whole folder, delete everything and sync it again.

Please tell me there is a simpler way to keep it mirrored. Thanks!

Share this post


Link to post
Share on other sites

Option to "Overwrite any changed files" on mobiles is off. So an updated file gets invalidated and ceases syncing. Currently there is no way to enable it and force syncing apart from removing the file from share location on desktop and putting it back to another location, so that path to the file is now different. 
Perhaps this behavior will be reconsidered in future releases. 

Share this post


Link to post
Share on other sites

I just noticed the new option in Sync 2.4.7! Thank you so much!

Makes life so much easier if I can rely on files staying synced and without needing to disconnect/reconnect the whole folder every time a file breaks for some reason! :)

Edited by Mouserider

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.