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

concrete5 core filemanager folder picker is too slow with tons of files. Use async bootstrap select library #51

Open
aembler opened this issue Oct 26, 2020 · 3 comments

Comments

@aembler
Copy link
Member

aembler commented Oct 26, 2020

The concrete5 file manager folder picker pictured here:

image

Is too slow when there are lots of folders. In our Brandcentral install we have hundreds of folders, and it takes 11 seconds to populate this select menu, which slows the file manager down a lot. Can we use the async-bootstrap-select library that we have built into bedrock to work with this menu, instead of the regular bootstrap select, in order to make this faster?

@bitterdev
Copy link
Contributor

Hi Andrew,

i have implement a custom logic that are queries the folder items with a recursive SQL query method. This method is much more powerful then the pervious one and should speed up the total query time into just a few milliseconds.
I have choosed this way because implementing a async dropdown is much more time-intense.
Please give me your feedback regarding to this suggestion.

@bitterdev
Copy link
Contributor

see concretecms/concretecms#9173

@aembler
Copy link
Member Author

aembler commented Oct 27, 2020

I merged in this pull request but I think we still have to go with an async model.

  1. With your changes we still only decreased the request to about 5 seconds, from 11. Which is a definite improvement, but still too slow. It creates this loader at the top of the file manager that hangs everything until it completes.
  2. We're no longer checking permissions on the nodes, which is a problem. We check them in the backend to see if the user has permission to add a particular file to a folder but we still shouldn't be showing the users folders that they don't have access to. This code used to be in the code that you replaced, but it's not there anymore.

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

No branches or pull requests

2 participants