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

[Bug]: data loss when moving files between 2 group folders if the destination one is also directly shared with the user #6462

Closed
4 of 8 tasks
mgallien opened this issue Feb 19, 2024 · 1 comment · Fixed by #6463

Comments

@mgallien
Copy link
Collaborator

⚠️ Before submitting, please verify the following: ⚠️

Bug description

So user has 2 group folders groupOrigin and groupDestination.
Group folder groupDestination is also directly shared with name directShareGroupDestination.
If some folders from groupOrigin are moved into groupDestination by anyone having access to them (except via the desktop client of the user), the desktop client will delete most of the moved files and folders.

Steps to reproduce

  1. Sync the 3 directories (groupOrigin, groupDestination and directShareGroupDestination)
  2. Someone with access using another client moves a folder hierarchy within groupOrigin to groupDestination
  3. The desktop client delete files from this folder hierarchy after it was moved to groupDestination

Expected behavior

No data loss occur and everything is synced as it should (duplicate the content within groupDestination and directShareGroupDestination

Which files are affected by this bug

any

Operating system

Linux

Which version of the operating system you are running.

Any recent linux distribution

Package

Appimage

Nextcloud Server version

27.1.6

Nextcloud Desktop Client version

3.12.0

Is this bug present after an update or on a fresh install?

Updated from a minor version (ex. 3.4.2 to 3.4.4)

Are you using the Nextcloud Server Encryption module?

Encryption is Disabled

Are you using an external user-backend?

  • Default internal user-backend
  • LDAP/ Active Directory
  • SSO - SAML
  • Other

Nextcloud Server logs

No response

Additional info

No response

@github-project-automation github-project-automation bot moved this to 🧭 Planning evaluation (don't pick) in 🤖 🍏 Clients team Feb 19, 2024
@mgallien mgallien moved this from 🧭 Planning evaluation (don't pick) to 🏗️ In progress in 🤖 🍏 Clients team Feb 19, 2024
@mgallien
Copy link
Collaborator Author

@tobiasKaminsky as discussed

mgallien added a commit that referenced this issue Feb 19, 2024
current automated tests are never breaking the rule that a file that
should be moved on client side (after a move was done server side)
exists either at teh original path or the destination path.

in practice it may happen (and I manually tested it) thet the sync
engine decides to move a single file in two distinct places

that decision will violate this rule and a debug build would then run
into the assert

Close #6462

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
mgallien added a commit that referenced this issue Mar 5, 2024
current automated tests are never breaking the rule that a file that
should be moved on client side (after a move was done server side)
exists either at teh original path or the destination path.

in practice it may happen (and I manually tested it) thet the sync
engine decides to move a single file in two distinct places

that decision will violate this rule and a debug build would then run
into the assert

Close #6462

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
mgallien added a commit that referenced this issue Mar 5, 2024
current automated tests are never breaking the rule that a file that
should be moved on client side (after a move was done server side)
exists either at teh original path or the destination path.

in practice it may happen (and I manually tested it) thet the sync
engine decides to move a single file in two distinct places

that decision will violate this rule and a debug build would then run
into the assert

Close #6462

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
mgallien added a commit that referenced this issue Mar 5, 2024
current automated tests are never breaking the rule that a file that
should be moved on client side (after a move was done server side)
exists either at teh original path or the destination path.

in practice it may happen (and I manually tested it) thet the sync
engine decides to move a single file in two distinct places

that decision will violate this rule and a debug build would then run
into the assert

Close #6462

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
@github-project-automation github-project-automation bot moved this from 🏗️ In progress to ☑️ Done in 🤖 🍏 Clients team Mar 5, 2024
backportbot bot pushed a commit that referenced this issue Mar 5, 2024
current automated tests are never breaking the rule that a file that
should be moved on client side (after a move was done server side)
exists either at teh original path or the destination path.

in practice it may happen (and I manually tested it) thet the sync
engine decides to move a single file in two distinct places

that decision will violate this rule and a debug build would then run
into the assert

Close #6462

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Archived in project
Development

Successfully merging a pull request may close this issue.

1 participant