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

Shares jail are available after disabling/deleting space #6154

Closed
Tracked by #6230
ScharfViktor opened this issue Apr 26, 2023 · 5 comments
Closed
Tracked by #6230

Shares jail are available after disabling/deleting space #6154

ScharfViktor opened this issue Apr 26, 2023 · 5 comments
Assignees
Labels
Priority:p1-urgent Consider a hotfix release with only that fix Topic:UX-Design Type:Bug

Comments

@ScharfViktor
Copy link
Contributor

ScharfViktor commented Apr 26, 2023

Infinite Scale 3.0.0-rc.1 Community
ownCloud Web UI 7.0.0-rc.32

Steps:

  • space admin creates project space
  • add folder f1 with file to the space
  • share folder f1 to einstein and create public link with role uploader
  • einstein accepts folder
  • public open link
  • space admin disabled space or delete (same behavior)

Actual: as a user einstein I don't understand what happens. I haven't any message or notification. I see shared folder and I know that there were files that aren't there now

  • folder Shares/f1 is exist for einstein but it's empty

Screenshot 2023-04-26 at 15 28 48

  • all actions are available but after clicking user gets 400 code

image

  • user can decline share and cannot accept again

  • for public link available with enabled drop files button

image

Expect:

@ScharfViktor ScharfViktor changed the title Shares are available after disabling/deleting space Shares jail are available after disabling/deleting space Apr 26, 2023
@ScharfViktor ScharfViktor mentioned this issue Apr 27, 2023
89 tasks
@micbar
Copy link
Contributor

micbar commented Apr 27, 2023

Very good finding!

IMO this "works as designed" but we have a bad design.

@butonic FYI

@micbar micbar added Priority:p2-high Escalation, on top of current planning, release blocker Topic:UX-Design labels Apr 27, 2023
@micbar
Copy link
Contributor

micbar commented Apr 27, 2023

@butonic @kobergj @aduffeck can we teach the share manager to not list shares for disabled spaces?

@micbar micbar added Priority:p1-urgent Consider a hotfix release with only that fix and removed Priority:p2-high Escalation, on top of current planning, release blocker labels May 2, 2023
@micbar micbar moved this from Qualification to Prio 1 in Infinite Scale Team Board May 2, 2023
@butonic
Copy link
Member

butonic commented May 2, 2023

The CS3 share manager (actually the jsoncs3 share manager implementation) should be unaware of resource state. ListShares should be dumb, return all shares and point to the resource. It will filter out expired shares because that is his responsibility.

For whatever reason the GetShare() implementation does a stat request, which it IMO should not make ... it is the responsibility of the consumer to verify if the resource still exists.

When a resource / folder / space is deleted we need to walk the tree to delete all shared resources ... should be an async process, similar to indexing. deleting a space can easily delete all shares in that space, but deleting a folder has to be smarter to invalidate all shares in that folder 🤔

now ... for this issue the ocs share handler which is the consumer for the ListShares call will have to do the Stating ... hm ... maybe if one of the stat calls fails we can indicate that a space is disabled? or we would have to differentiate between space and node ... 🤔

In any case listing shares reuqires a stat anyway ... but why is that still visible ... Ahhhh, because the stat is cached ... but we no longer use tha gateway stat cache ...

@butonic
Copy link
Member

butonic commented May 2, 2023

AFAICT this was cause by the stat cache. It has been disabled since rc1 because invalidating entries in the stat cache was too expensive. We currently rely on the more efficient filemetadata cache. I cannot reproduce this on current master.

@micbar
Copy link
Contributor

micbar commented May 8, 2023

should be fixed in RC.2

@micbar micbar closed this as completed May 8, 2023
@github-project-automation github-project-automation bot moved this from Prio 1 to Done in Infinite Scale Team Board May 8, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Priority:p1-urgent Consider a hotfix release with only that fix Topic:UX-Design Type:Bug
Projects
Archived in project
Development

No branches or pull requests

3 participants