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

rework search api to allow searching on multiple caches at once #26874

Merged
merged 7 commits into from
Jun 16, 2021

Conversation

icewind1991
Copy link
Member

@icewind1991 icewind1991 commented May 4, 2021

Changes file search from having each storage's cache perform the cache to asking each cache for how to filter search results, combining all filters from every cache and running the search in a single query.
The results are then passed to the caches again to allow post-processing before finally turning them into the final result objects.

This way there is only a single query required for the search no matter how many storages a user has access to, this does come at the cost of a more complex query but it should still be a good improvement overall

@icewind1991 icewind1991 added the 2. developing Work in progress label May 4, 2021
@icewind1991 icewind1991 force-pushed the single-query-search branch 6 times, most recently from 0f50fe1 to 0d97f7e Compare May 10, 2021 12:55
@icewind1991 icewind1991 force-pushed the single-query-search branch 6 times, most recently from 7cf651e to acf974c Compare May 26, 2021 15:58
@icewind1991 icewind1991 changed the title [wip] rework search api to allow searching on multiple caches at once rework search api to allow searching on multiple caches at once May 26, 2021
@icewind1991 icewind1991 added 3. to review Waiting for reviews and removed 2. developing Work in progress labels May 26, 2021
@icewind1991 icewind1991 added this to the Nextcloud 22 milestone May 26, 2021
@nickvergessen nickvergessen removed their request for review May 31, 2021 15:25
@blizzz blizzz mentioned this pull request Jun 2, 2021
57 tasks
Copy link
Member

@blizzz blizzz left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just skimmed, did not see anything that is very obvious off.

Please check the code scanning findings, they seem reasonable.

@skjnldsv skjnldsv removed the 3. to review Waiting for reviews label Jun 2, 2021
@skjnldsv skjnldsv added 4. to release Ready to be released and/or waiting for tests to finish 3. to review Waiting for reviews and removed 4. to release Ready to be released and/or waiting for tests to finish labels Jun 2, 2021
@MorrisJobke MorrisJobke mentioned this pull request Jun 10, 2021
59 tasks
@icewind1991
Copy link
Member Author

rebase fixed ci :)

Signed-off-by: Robin Appelman <robin@icewind.nl>
Signed-off-by: Robin Appelman <robin@icewind.nl>
Signed-off-by: Robin Appelman <robin@icewind.nl>
Signed-off-by: Robin Appelman <robin@icewind.nl>
Signed-off-by: Robin Appelman <robin@icewind.nl>
Signed-off-by: Robin Appelman <robin@icewind.nl>
Signed-off-by: Robin Appelman <robin@icewind.nl>
@putt1ck
Copy link

putt1ck commented Aug 25, 2021

Can this be backported to 21?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
3. to review Waiting for reviews
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants