-
Notifications
You must be signed in to change notification settings - Fork 1.2k
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
dvc push in a project with multiple users #7510
Comments
What type of remote are you using? |
I think it is |
@emilijapur If you write/copy a file to the same directory on the ssh server without dvc, do others have permission to write to that file? |
Yes, I am using ssh remote. @dberenbaum I believe the problem is that DVC remote directory owner and group in linux is "user_group" which consists of user_A, user_B, user_C. And when user_A pushes to DVC remote directory using ssh it creates folder "24" for example with file "dd737c0642bf1ff8eee74eb121fbb6" (because he created hash value "24dd737c0642bf1ff8eee74eb121fbb6" . Then if user_B generates hash value "24xxxxxxxxxxxxxxxxxxx" it tries to create and push file named "xxxxxxxxxxxxxxxxxxx" to directory "24". Since user_A has already created folder "24" user_B faces the problem I have written before. I believe it comes because the owner of directory "24" is user_A and user_B does not have the permissions to push to that directory., since the owner and group of thet directory is not "user_group", but "user_A". |
This looks like a duplicate of iterative/dvc-ssh#15 (we need a way to configure the default dir permissions in SSH remotes, the same way we have it in @emilijapur there are suggested workarounds in the linked issue (either have your users set |
Bug Report
dvc push: failed to push data to the cloud
Description
Hello, I stumbled into a problem that when multiple people work in the same project and they run different experiments on their computer sometimes dvc generates directories in .dvc/cache with the same name as it already exists in dvc remote server. Thus, if a user wants to push data after dvc run it can not be done, because for example directory .dvc/cache/16 exists in /path/to/remote/server/16. In that case error is shown:
This happens even though the user has all rights in the directory /path/to/remote/server/
This mostly happens when multiple people are working in the same project at the same time or user deletes all his cache in the computer.
I believe this problem can be solved if every user would download all cache from remote server, however, this is not possible in my case, because there are terabytes of data.
Reproduce
Repeat this multiple times:
Delete all dvc cache files from computer and repeat it multiple times again. After a while it would generate folders with the same name as in remote server.
Expected
I expect to push files from any computer without having to download all cache from remote server without any errors.
Environment information
Output of
dvc doctor
:$ dvc doctor
OS - Ubuntu 20.04.4 LTS
The text was updated successfully, but these errors were encountered: