-
Notifications
You must be signed in to change notification settings - Fork 95
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
Slow (Quick-)Type hierarchy for large trees. #1830
Comments
@raghucssit WDYT? |
Or just do not auto-expand nodes that are already expanded elsewhere in the tree? @fedejeanne |
That would make sense for me since those items don't bring much information with them, but I think it is just a patch, right? I mean the real problem is that opening big trees is slow (vi-eclipse/Eclipse-Platform#123) and this solution would translate to "create smaller trees". In any case, if that approach is a quick win then I am all for it. |
Quick but huge win! for so large trees it's only a matter of moderate n to get problems no matter how fast it is. Can you provide such PR? |
yes, no way |
Good idea, It avoids UI freeze. I will create a PR. |
@raghucssit this approach doesn't solve the problem described in #1830 (comment) because that specific hierarchy has "only" 1 child. The problem is that expanding that child also expands the children and that ends up creating and expanding about 17.000 items. In order to reproduce the error, you should use the snippet provided in this Issue |
I think Viewer Limit is applied to all levels of the tree. so in the second level also only limited number of items will be shown. |
A limit per Node will not solve the issue the issue with a binary tree (i.e. only 2 children per node) that still has a huge amount of nodes in total. We could add both: 1. limit per node and 2. not autoexpand nodes twice in a tree. |
Exactly. See #1831 (review) |
autoexpand should be set false. otherwise it's like a loop. |
Simple reproducer:
On windows ~ 12 seconds to crtl-t
I20
. Seems to be a non ending story for already I30 - O(2^n) ?My Vote: by default JDT should not try to expand more then constant number of nodes.
Probably Initial maximum number of elements would be a usefull limit:
The text was updated successfully, but these errors were encountered: