Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Respect selective sync for newly added data #3529

Closed
disenchant opened this issue Jul 31, 2015 · 13 comments
Closed

Respect selective sync for newly added data #3529

disenchant opened this issue Jul 31, 2015 · 13 comments
Assignees

Comments

@disenchant
Copy link

Let me start with an example to make my issue more clear:
I've got a folder Projects that I share with the group employees. In the Projects folder there I have a number of projects.

+ Projects
| - Project A
| - Project B

Now not all employees need all of the projects synced to their devices but still they should be able to do so if they need the data or become part of this project. In the ownCloud client we can do a selective sync to accomplish exactly that but there comes my issue.

When a new project (let's call it Project C) is created by any of the employees, this new project will automatically be synced to all employees regardless of them never having Project C selected for synchronisation before. I would recommend, that the ownCloud gets an option in form of a checkbox that could be labeled "Automatically sync newly added files and folders". Like this such situations could be avoided.

@scolebrook
Copy link
Contributor

The option to invert this behavior of automatically selecting all newly shared content vs not selecting it and requiring a user to select it in the client is important to a lot of workflows. I've just had a bunch of people complain about this in a meeting today.
Having a check box in the selective sync dialog box to invert this and having a branding option to set which behavior is default would be beyond helpful.

@MTRichards
Copy link

What we have done in 2.0 is to add a new folder confirmation for syncing. So in the use case above, Project C would be a new folder. If this folder is bigger than a threshold size the user can set (or you can set when branding the client) the user will get a notification and the folder will not sync by default (selective sync will be turned off for that new folder). Set that size real small and you basically get the above desired behavior. This should help with these use cases.

See #3148 for more info.

@disenchant
Copy link
Author

Thanks @MTRichards, that sounds like a plan 😃 One question: What happens in the following scenario...

* Employee X creates a new directory (a project in my example)
* X puts a very small file into the folder
* Employee Y syncs with the server and receives the new project as it's below the defined threshold
* X puts a big file into the project folder
* [???]

I see (at least) the following three options that could be the next step here:
Option 1: The new project folder will be automatically excluded again, as it's not compatible with the threshold.
Option 2: The new project folder stops to sync any additional data once the threshold has been reached.
Option 3: The big files will also be synced down to the machine of employee Y.

Can you tell how it's planned to address this kind of situation?

@phil-davis
Copy link
Contributor

Set the limit to zero, then no new folders will come until the user chooses to have them. I will test this now and report back, to make sure that the zero case really works.

@MTRichards
Copy link

@phil-davis Precisely correct.

And, of course, the feature can be turned off in settings

@phil-davis
Copy link
Contributor

Yes, the feature turned off is effectively setting the size limit to infinity.

@phil-davis
Copy link
Contributor

If I set the limit to zero and an empty folder is shared with me, then it downloads anyway. The text on the Advanced settings says "larger than" so I guess an empty folder is exactly 0MB, not larger than 0MB.
I raised an issue to document and discuss that case:
#3542

@phil-davis
Copy link
Contributor

I also raised issue #3543 to discuss specifically
"Timing of adding a new folder and then putting files in it"
There are lots of cases there where the folder is zero or small in the initial seconds/minute and then gets big as the files are being loaded to the server and appear - either due to human speed of putting files in there or speed of upload to the server or...

@MTRichards
Copy link

Can we close this issue and leave #3543 for that component?

@phil-davis
Copy link
Contributor

Note: The zero case was fixed by 8216727
In 2.0.* if you set the limit to zero then even a new empty folder is not automatically downloaded.

@PVince81
Copy link
Contributor

PVince81 commented Sep 3, 2015

I think there is a general confusion about how this should work. I was also surprised that a half-selected folder would automatically receive new folders that were created inside. (CC @ogoffart)

@phil-davis
Copy link
Contributor

I proposed "quiet selective sync" in issue #3683 - that also will help this issue a bit. If the user is willing to set their new folder size confirmation limit to 0 and select "Do not notify the user about new large folders" then that will stop any new folders from syncing, and also stop any notification noise about new folders. This combination of settings might be not entirely obvious to a user who wants to achieve what is requested here.
There might still be a cleaner way to also implement what is asked for here, while still allowing a non-zero new folder size confirmation limit.

@jospoortvliet
Copy link

I think the text should note that putting this to 0 means asking conformation for any new folder (not files in existing folders).

Aside from that description, the feature in 2.0 of allowing users to set a threshold size for new folders to be automatically synced is a great solution - especially now the 0 value really stops all folders from auto-syncing. I think this issue is resolved - if the @disenchant disagrees, please just re-open.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

7 participants