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

[stable21] add a prefix index to filecache.path, attempt 2 #29325

Merged
merged 3 commits into from
Jan 7, 2022

Conversation

backportbot-nextcloud[bot]
Copy link

@backportbot-nextcloud backportbot-nextcloud bot commented Oct 19, 2021

⚠️ This backport had conflicts and is incomplete ⚠️

backport of #28541

@blizzz
Copy link
Member

blizzz commented Oct 20, 2021

are conflicts resolved?

The reason that `filecache.path` hasn't had an index added is the mysql limitation of ~1kb for indexeded fields,
which is to small for the `path`, however mysql supports indexing only the first N bytes of a column instead of the entire column,
allowing us to add an index even if the column is to long.

Because the index doesn't cover the entire column it can't be used in all situations where a normal index would be used, but it does cover the `path like 'folder/path/%'` queries that are used in various places.

Sqlite and Postgresql don't support prefix indexes, but they also don't have the 1kb limit and DBAL handles the differences in index creation.

Signed-off-by: Robin Appelman <robin@icewind.nl>
having the index work properly for the queries we need it for requires some additional options which dbal does not support at the momement.
to prevent making it harder to add the correct index later on we don't create the index for now on postgresql

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

resolved

* @throws Exception
* @since 23.0.0
*/
public function getDatabasePlatform();
Copy link
Member

Choose a reason for hiding this comment

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

@blizzz blizzz mentioned this pull request Nov 3, 2021
10 tasks
@skjnldsv skjnldsv added the 3. to review Waiting for reviews label Nov 4, 2021
@blizzz
Copy link
Member

blizzz commented Nov 10, 2021

moved to 21.0.7

Signed-off-by: Robin Appelman <robin@icewind.nl>
This was referenced Jan 7, 2022
@skjnldsv skjnldsv added 4. to release Ready to be released and/or waiting for tests to finish and removed 3. to review Waiting for reviews labels Jan 7, 2022
@skjnldsv skjnldsv merged commit 064f261 into stable21 Jan 7, 2022
@skjnldsv skjnldsv deleted the backport/28541/stable21 branch January 7, 2022 07:46
This was referenced Jan 20, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
4. to release Ready to be released and/or waiting for tests to finish feature: filesystem high performance 🚀
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants