owncloud / client

🖥️ Desktop Syncing Client for ownCloud
GNU General Public License v2.0
1.4k stars 667 forks source link

Adding a new subfolder to a shared folder automatically marks that subfolder as being shared on all clients #2707

Closed jimcglaughlin closed 5 years ago

jimcglaughlin commented 9 years ago

We are testing ownCloud 7 Community Edition on Ubuntu with several ownCloud Desktop Windows clients ver 1.7.1. We added an existing directory to the External Storage area to so the clients can select folders to sync with...for example: ---Top_Level_Share -------Shared_Folder_1 -------Shared_Folder_1 -------Shared_Folder_3 On each ownCloud Client, we can select 'Choose what to sync' and just select 'Shared_Folder_3' for example and it works fine. If someone adds a 'Shared_Folder_4' to the 'Top_Level_Share' directory on the server, all of the ownCloud clients will now show that new folder as being sync'ed even though they did not select it. We will have hundreds of folders under the 'Top_Level_Share' and it will be constantly added to. The clients will only be needing to sync a few at a time and don't need shared folders automatically being added to their 'sync list' when folders are added to the server. If you have any comments or suggestion on how to turn this feature off please let me know. Thank you.

--- Want to back this issue? **[Post a bounty on it!](https://www.bountysource.com/issues/7770768-adding-a-new-subfolder-to-a-shared-folder-automatically-marks-that-subfolder-as-being-shared-on-all-clients?utm_campaign=plugin&utm_content=tracker%2F216457&utm_medium=issues&utm_source=github)** We accept bounties via [Bountysource](https://www.bountysource.com/?utm_campaign=plugin&utm_content=tracker%2F216457&utm_medium=issues&utm_source=github).
danimo commented 9 years ago

cc @MTRichards @ogoffart

ogoffart commented 9 years ago

Currently the sync alogirthm do not treat shared folder or normal folders differently. When you add a new folder on your laptop, you want to have it on your desktop. So new folder automaticaly get sync'ed.

If new folder don't get sync'ed automatically, how are you supposed to know there is a new folder?

jimcglaughlin commented 9 years ago

We are looking for a solution to the following…

We keep job folders on a server…they are created on the server. If an engineer wants to work on a job, he will pull the files from the server and do his work in the office, at home, or in the field. Later, the engineer will upload his files back on the server to keep what is on the server current. Let’s say 4 engineers are working on the same job…they could be working on different files or the same file, but on their own computer. Typically they go to the server to pull down the latest files before they do their work, so we want to make sure the server has the latest, most up to date files for that job.

Now, if we have a new job created on the server, there may only be a few engineers who need to work on that job. I don’t need that new job to be automatically shared and downloaded to all 100 engineers’ computers when they are not assigned to that job. I would like only the engineers who need that job to open their ownCloud client and select it.

So, in summary, we have a server that holds hundreds of job folders and will continually be updated with new job folders. We need a solution for engineers to select which job folders they want to sync to from the server. We are not pushing from computers/laptops to the servers…we are syncing form the server to the computers/laptops.

Maybe ownCloud is not the solution we need but it’s very close.

Jim McGlaughlin Applications Development Manager Logical Systems, LLC (901) 377-5574 (office) | (901) 866-6232 (direct)

From: Olivier Goffart [mailto:notifications@github.com] Sent: Thursday, January 15, 2015 3:53 AM To: owncloud/client Cc: Jimmy McGlaughlin Subject: Re: [client] Adding a new subfolder to a shared folder automatically marks that subfolder as being shared on all clients (#2707)

Currently the sync alogirthm do not treat shared folder or normal folders differently. When you add a new folder on your laptop, you want to have it on your desktop. So new folder automaticaly get sync'ed.

If new folder don't get sync'ed automatically, how are you supposed to know there is a new folder?

— Reply to this email directly or view it on GitHubhttps://github.com/owncloud/client/issues/2707#issuecomment-70062529.

ogoffart commented 9 years ago

One idea is to use different sync folder. Instead of syncing the root directory, you can click on "Add Folder..." and then choose to sync only some of the folders.

MTRichards commented 9 years ago

Interesting use case. The add folder option would be one way to do it, and it is currently supported and simple enough to set up - though the UX is a little more work.

Do you mean that this all happens automatically though, and an admin can decide whether a folder is auto synced or not - even when not the root folder? I am curious how you would articulate the use case, and then differentiate it from a case where you want new folders to be synced - which is often the new one.

---Top_Level_Share -------Shared_Folder_1 -------Shared_Folder_1 -------Shared_Folder_3

Any more input there would be great.

scolebrook commented 9 years ago

@MTRichards @ogoffart I opened a support ticket a few days ago discussing this issue. We have a similar need to have the logic of selective sync reversible. There are any use cases where you'd want to have it default to not check new folders in the list by default. @jimcglaughlin demonstrates one of using owncloud as a file server sync tool to sync selected file server content with a local hard drive. We have that use case and others where folders will change but users will not want to sync them by default.

Eg: /external storage (smb) -----dir 1 -----dir 2 -----dir 3

A team have the smb share mounted via group membership. Each dir is named for a given user in the team and they'd only want their directory synced locally most of the time but may want to sync someone else's sometimes or access it via web. So they uncheck the dirs they don't want. New staff member. New dir. Everyone has to change their settings because owncloud checks it by default. And when these directories are used to sync HD uncompressed video from a field location..... You can imagine what could happen.

Using add folder to create a separate set of preferences could allow one folder to sync everything by default and the other to do the opposite. A checkbox could be used at the bottom of the selective sync dialog box to toggle between the current blacklist behavior (sync everything unless I tell you not to) and invert it into a whitelist (only sync what I tell you). This way it's not necessary to distinguish if something is shared, external, etc. The multiple folders in the client make the distinction for you. And if you've got complex workflows that require this, teaching staff the handful of clicks required to configure a new folder ONE TIME in the client is not a high bar.

We have several teams that would love to tightly integrate ownCloud into their workflows but see this issue as a major usability problem.

mikew commented 9 years ago

@ogoffart

If the user is using "Choose what to sync" and hasn't explicitly enabled a folder to be synced, nothing in that folder or any parent folder should be synced.

If new folder don't get sync'ed automatically, how are you supposed to know there is a new folder?

Standard team communication?

Currently, if you have ...

- [-] All Projects
    - [-] Project 1
      - [x] Design
      - [ ] Documentation
      - [ ] Media

... and someone adds a large folder to All Projects/Project 2, it is synced everywhere and wastes resources of people's machines and can really hinder performance of the server.

MTRichards commented 9 years ago

This remains something we have to resolve. Still working on it.

jimcglaughlin commented 9 years ago

Thanks for the update.

Jim McGlaughlin Applications Development Manager Logical Systems, LLC (901) 377-5574 (office) | (901) 866-6232 (direct)

From: MTRichards [mailto:notifications@github.com] Sent: Friday, March 27, 2015 11:49 AM To: owncloud/client Cc: Jimmy McGlaughlin Subject: Re: [client] Adding a new subfolder to a shared folder automatically marks that subfolder as being shared on all clients (#2707)

This remains something we have to resolve. Still working on it.

— Reply to this email directly or view it on GitHubhttps://github.com/owncloud/client/issues/2707#issuecomment-87004963.

rba commented 9 years ago

The scenario described by @mikew with the project folders is exactly the same as we have here. Currently doing in-deep evaluation before we like to roll it out our company.

To have this work is crucial for our decision if we go ahead with owncloud.

Let me know if you need someone to assist testing.

johansmitsnl commented 9 years ago

I run into the same issue as described here, but slightly different. My preferred behaviour would be:

cbf305 commented 8 years ago

I agree with @johansmitsnl as to how selective sync should work. I am using ownCloud for my personal use as well as evaluating for use on our corporate network. In my personal use case, I have several devices that I need to keep synced, but I have more data than will fit on two of these devices, so I use selective sync to just pick what I need. I have to be cognisant of what new folders I create because if I add a folder from my desktop with 50GB and forget to uncheck on the two devices with small drives, then they run out of free space.

I understand the argument of "how would you know if a folder was added", but as @ogoffart mentioned, this is what communication is for. So the solution here, ideally, would be an option in the client AND the server to control whether clients will sync new folders outside of what they had selected. It should be in both locations because we all know users read the manual and follow directions, right? ... yea and unicorns are real ;-)

So the client can say I don't want any new folders other than what I selected, otherwise it will sync new folders. And the server admin can say don't sync folders outside of what is selected or allow the user to decide. The admin should also have a control to be able to lock out the user from adjusting this setting.

The cherry on top would be if the client would show the folders in red that are too large to be synced. It'd make it easier for those users who also cannot add or subtract ;-)

Thanks!

phil-davis commented 8 years ago

You can already choose in the client to "Ask confirmation before downloading folders larger than 0 MB". That stops any new folders from being synced. But in that case the user does get notified of the new folders and needs to at least press "Apply" to confirm they do not want to sync the new folders. It seems to me that there could be an extra checkbox to allow "Ignore large folders". That would "auto-apply" on behalf of the user. I think that should let the user have enough control over what new stuff comes? And I have a feeling I have typed something like this in another issue.

cbf305 commented 8 years ago

You know I've see than option in there a hundred times and never thought to put a 0 in the box. I guess I'm just used to some of my admin consoles where a 0 means unlimited or don't enforce. So that does solve my issue, but it's a MacGvyer solution, IMO. I still think this is an area that needs addressing and refinement for enterprise use. Anyway thanks for the reply :-)

johansmitsnl commented 8 years ago

Just tested the work around and it works for me to. Then again a more clear check option or some explanation would be nice.

ogoffart commented 5 years ago

Closing old issue. The choose what to sync has changed a bit in the last years.