Skip to content

sync spaces in jsoncs3 concurrently #10647

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

Open
1 task
butonic opened this issue Nov 25, 2024 · 5 comments
Open
1 task

sync spaces in jsoncs3 concurrently #10647

butonic opened this issue Nov 25, 2024 · 5 comments
Labels
Priority:p2-high Escalation, on top of current planning, release blocker Type:Bug

Comments

@butonic
Copy link
Member

butonic commented Nov 25, 2024

every test run creates a new space and that has accumulated.

Image

now ListReceivedShares has to sync AFAICT 74 spaces.

  • sync spaces in concurrently?
@butonic butonic moved this from Qualification to Prio 2 in Infinite Scale Team Board Nov 25, 2024
@butonic butonic added the Priority:p2-high Escalation, on top of current planning, release blocker label Nov 25, 2024
@butonic
Copy link
Member Author

butonic commented Nov 25, 2024

Hm 1 definitely is not the right concurrency. Maybe 10?

The code is already concurrent, but in the past we started as many goroutines as we needed to fetch spaces.

Then we initially limited it to 5 #10572

Then we limited it to 1 with https://github.com/owncloud/ocis/pull/10580/files#diff-0b152f7605595cf8986ba47f9ec12136e240c27124250ff619f7786b19cb6d76

And I had a draft to increase it to 5 again #10595

🤪

@butonic
Copy link
Member Author

butonic commented Nov 25, 2024

in a k8s cluster raising SHARING_USER_JSONCS3_MAX_CONCURRENCY from 1 to 10 decreases request duration from 18.47s to 5.82s:
grafik

in a single binary deployment raising SHARING_USER_JSONCS3_MAX_CONCURRENCY from 1 to 5 increases request duration from ~340ms to 1.28sec. We need to verify this ... something might be fishy in the ci.

@butonic
Copy link
Member Author

butonic commented Nov 25, 2024

@kobergj @wkloucek we should set SHARING_USER_JSONCS3_MAX_CONCURRENCY to eg 10 or 20 in the helm charts. 10 improves the sharedWithMe response time significantly (see above).

In ocis 5 we just start a goroutine for each space. This behavior can be restored by setting SHARING_USER_JSONCS3_MAX_CONCURRENCY=0 which produces a trace like this:
grafik

With SHARING_USER_JSONCS3_MAX_CONCURRENCY=10 and warmed up cahces the request takes 1.51s:
grafik

@butonic
Copy link
Member Author

butonic commented Nov 25, 2024

We are blocked until a decision is made

@butonic butonic changed the title sync spaces in concurrently sync spaces in jsoncs3 concurrently Nov 26, 2024
@d7oc
Copy link
Contributor

d7oc commented Nov 26, 2024

Could we also add some more context to the documentation after the findings in here? For non-involved people it's hard to digest what the settings are for when just reading the current documentation. So in detail: What is more concurrent on the sharing service if we have more concurrency?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Priority:p2-high Escalation, on top of current planning, release blocker Type:Bug
Projects
Status: blocked
Development

No branches or pull requests

2 participants