Description of the need
The function menu_navigation_links_rebuild() uses a large number of database queries when rebuilding the system menu links that are created based on hook_menu. This process uses nearly 300 database queries without any contributed modules, and gets more expensive the more modules you have.
Proposed solution
These queries can be statically cached during the process and then all written back to the database at the end. Based on my initial testing, this reduces test execution time by 10-15%
Additional information
I had to modify one test that deletes menu items without using menu_link_delete to simulate a database crash. The behavior in this case is changed because the links are stored using a static cache.
PR: https://github.com/backdrop/backdrop/pull/3659
Advocate: @hosef
Recent comments
Perhaps, these latest lines of random test failures can be considered in the meeting too?
December 18th, 2025 - Weekly Meetings
There are some test failures in the user module after merging in the latest commits. Randomly, only in one PHP version - and always a different one. See also this Zulip...
December 18th, 2025 - Weekly Meetings
Two issues would benefit from testing and code reviews; they've been around for a while and no takers. It would be a shame for these to miss the next releases. View Table Headings...
December 18th, 2025 - Weekly Meetings