Skip to content

[4.0] Improve menu item list performance on multilingual sites#26485

Merged
wilsonge merged 1 commit intojoomla:4.0-devfrom
SharkyKZ:j4/query/menus/multilang
Oct 6, 2019
Merged

[4.0] Improve menu item list performance on multilingual sites#26485
wilsonge merged 1 commit intojoomla:4.0-devfrom
SharkyKZ:j4/query/menus/multilang

Conversation

@SharkyKZ
Copy link
Contributor

@SharkyKZ SharkyKZ commented Oct 5, 2019

Summary of Changes

Replaces JOIN and GROUP clauses in query with a subquery for improved performance.

Testing Instructions

Set up a multilingual site.
Enable language associations.
Create some menu items with and without associations
View menu item list in backend.

Expected result

Works like before.

Documentation Changes Required

No.

@richard67
Copy link
Member

I have tested this item ✅ successfully on 426111e

Tested with MySQL 5.7 and PostgreSQL 10.10.

About performance I can't say anything because my test data set is too small.

But I can confirm everything works as well as before, carefully watching PHP error log with PHP error reporting set to maximum and watching database log.


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/26485.

@alikon
Copy link
Contributor

alikon commented Oct 6, 2019

I have tested this item ✅ successfully on 426111e


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/26485.

@alikon
Copy link
Contributor

alikon commented Oct 6, 2019

RTC


This comment was created with the J!Tracker Application at issues.joomla.org/tracker/joomla-cms/26485.

@joomla-cms-bot joomla-cms-bot added the RTC This Pull Request is Ready To Commit label Oct 6, 2019
@wilsonge wilsonge merged commit ab1fdc2 into joomla:4.0-dev Oct 6, 2019
@wilsonge
Copy link
Contributor

wilsonge commented Oct 6, 2019

Thanks!

@joomla-cms-bot joomla-cms-bot added PR-4.0-dev and removed RTC This Pull Request is Ready To Commit labels Oct 6, 2019
@wilsonge wilsonge added this to the Joomla 4.0 milestone Oct 6, 2019
@Stuartemk
Copy link

Tested and implemented in joomla 3.9.12, php 7.2, Mysql 5.7
Tested on Articles list, Newsfeeds list, Contact list, Menu list.
NOT tested on articles filtered by Tags, due to my little knowledge to implement it in Joomla 3.9.12

Everything works as usual, I have not encountered problems, the performance has improved a bit, unfortunately I do not have the necessary knowledge to measure the percentage of improvement.

However, the Menu Component continues to perform poorly since this improvement would only improve performance in the multilanguage area, but individually the Menu Component continues to create a TTFB in sites with several menus.

I make available a site with real load for case study in case anyone is interested in finding the definitive solution to the poor performance of the Menu Component in Joomla, which from my personal point of view, is the only thing that limits joomla to be The best CMS.

Thank you all for your great work!

@infograf768
Copy link
Member

@Stuartemk

Tested and implemented in joomla 3.9.12

This PR was for 4.0

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

Successfully merging this pull request may close these issues.

7 participants