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

Improve faceted RBAC view performance #61

Open
marcinc opened this issue Jun 2, 2020 · 3 comments
Open

Improve faceted RBAC view performance #61

marcinc opened this issue Jun 2, 2020 · 3 comments
Labels
enhancement New feature or request UI User Interface related

Comments

@marcinc
Copy link
Contributor

marcinc commented Jun 2, 2020

Complex RBAC structure can sometimes generate significant amount of data and lead to unresponsive faceted tree view which renders it effectively unusable.

Proposed improvements:

  1. Reduce facets (entry points) to the RBAC tree view.
  2. Make the tree structure leaner.
  3. Consider a different visualisation solution / library.
@marcinc marcinc added enhancement New feature or request UI User Interface related labels Jun 2, 2020
@Anthirian
Copy link

Anthirian commented May 3, 2022

Not only that, it looks as if it's non-functional at the moment. In the JavaScript console I'm seeing the following warnings.

jquery.js:4050 jQuery.Deferred exception: Maximum call stack size exceeded RangeError: Maximum call stack size exceeded
    at fire (http://localhost:8000/vendor/jquery/jquery.js:3500:31)
    at Object.fireWith [as resolveWith] (http://localhost:8000/vendor/jquery/jquery.js:3630:7)
    at http://localhost:8000/vendor/jquery/jquery.js:4013:15
    at fire (http://localhost:8000/vendor/jquery/jquery.js:3500:31)
    at Object.add [as done] (http://localhost:8000/vendor/jquery/jquery.js:3559:7)
    at adoptValue (http://localhost:8000/vendor/jquery/jquery.js:3666:25)
    at Tree.when (http://localhost:8000/vendor/jquery/jquery.js:4033:4)
    at Tree._setInitialStates (http://localhost:8000/vendor/bootstrap-treeview/bootstrap-treeview.js:369:17)
    at Tree.<anonymous> (http://localhost:8000/vendor/bootstrap-treeview/bootstrap-treeview.js:206:17)
    at proxy (http://localhost:8000/vendor/jquery/jquery.js:10780:13)
jQuery.Deferred exception: Maximum call stack size exceeded RangeError: Maximum call stack size exceeded
    at fire (http://localhost:8000/vendor/jquery/jquery.js:3500:31)
    at Object.fireWith [as resolveWith] (http://localhost:8000/vendor/jquery/jquery.js:3630:7)
    at http://localhost:8000/vendor/jquery/jquery.js:4013:15
    at fire (http://localhost:8000/vendor/jquery/jquery.js:3500:31)
    at Object.add [as done] (http://localhost:8000/vendor/jquery/jquery.js:3559:7)
    at adoptValue (http://localhost:8000/vendor/jquery/jquery.js:3666:25)
    at Tree.when (http://localhost:8000/vendor/jquery/jquery.js:4033:4)
    at Tree._setInitialStates (http://localhost:8000/vendor/bootstrap-treeview/bootstrap-treeview.js:369:17)
    at Tree.<anonymous> (http://localhost:8000/vendor/bootstrap-treeview/bootstrap-treeview.js:206:17)
    at proxy (http://localhost:8000/vendor/jquery/jquery.js:10780:13)

In the meantime, nothing is shown at all on the webpage.

EDIT: This happens for me on the current version of Brave as well as Edge (dev version). On Firefox it seems to at least render after waiting quite a while.

@marcinc
Copy link
Contributor Author

marcinc commented May 5, 2022

Hi @Anthirian. Thanks for the report. The above is most likely caused by the significant RBAC structure in one of your clusters. Would you be able to share more detail about the scale you are dealing with? As stated in the original issue a faceted tree view will need a rework to enable more complex RBAC to be presented in a more efficient way. Unfortunately I can't provide any timeline for it at the moment but any improvement contributions are welcome.

@Anthirian
Copy link

I missed your reply back in May, my apologies. Here is the dataset that I used as input. It doesn't look like a significantly large set, but it might help pinpoint the issue. Thanks for your hard work.

rbac-configs.tar.gz

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request UI User Interface related
Projects
None yet
Development

No branches or pull requests

2 participants