Skip to content

[PERF] menu: avoid quadratic complexity with proxies#8799

Closed
fw-bot wants to merge 1 commit into
19.0from
19.0-17.0-perf-menu-component-adrm-530589-fw
Closed

[PERF] menu: avoid quadratic complexity with proxies#8799
fw-bot wants to merge 1 commit into
19.0from
19.0-17.0-perf-menu-component-adrm-530589-fw

Conversation

@fw-bot
Copy link
Copy Markdown
Collaborator

@fw-bot fw-bot commented May 28, 2026

In the menu component, we would compute whether to display the icons for each menu item. But to compute that, we need to loop on each menu items, leading to a quadratic complexity.

This could have been good enough as menus aren't too large, but the menu items are proxified by Owl, making the loop very slow.

Task: 6250318

review checklist

  • feature is organized in plugin, or UI components
  • support of duplicate sheet (deep copy)
  • in model/core: ranges are Range object, and can be adapted (adaptRanges)
  • in model/UI: ranges are strings (to show the user)
  • undo-able commands (uses this.history.update)
  • multiuser-able commands (has inverse commands and transformations where needed)
  • new/updated/removed commands are documented
  • exportable in excel
  • translations (_t("qmsdf %s", abc))
  • unit tested
  • clean commented code
  • track breaking changes
  • doc is rebuild (npm run doc)
  • status is correct in Odoo

Forward-Port-Of: #8798
Forward-Port-Of: #8794

In the menu component, we would compute whether to display the icons
for each menu item. But to compute that, we need to loop on each menu
items, leading to a quadratic complexity.

This could have been good enough as menus aren't too large, but the
menu items are proxified by Owl, making the loop very slow.

Task: 6250318
X-original-commit: f3c0aba
@robodoo
Copy link
Copy Markdown
Collaborator

robodoo commented May 28, 2026

Pull request status dashboard

@fw-bot
Copy link
Copy Markdown
Collaborator Author

fw-bot commented May 28, 2026

This PR targets 19.0 and is part of the forward-port chain. Further PRs will be created up to master.

More info at https://github.com/odoo/odoo/wiki/Mergebot#forward-port

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants