With 10000+ items in _content table even standart modules like mod_articles_category and mod_articles_popular take a lot of time for their execution (their query take more then 90% of time of all SQL queries for a page request)
This is because of ACL
I've commented out line:
$articles->setState('filter.access', $access);
in module's helper.php, and everything went ok.
I do not need ACL checks for those modules data retrieves and this is not an uncommon situation.
I think Joomla administrator has to have an option for modules to disable ACL check in their SQL WHERE clause. It really helps with large databases
Joomla 3.6.5
Sure it is outdated. But since then there were no cardinal changes in Joomla ACL architecture. And i know for sure from other people with the latest Joomla version that a large amount of articles is a nightmare because of ACL checks.
Actually, it would be a good optimisation option for admins to avoid ACL checks on some modules. If they don't need them.
That's a very dangerous change and definitely not something we should do. If there is a problem with the query then this is not the solution.
Try enabling the com_content option "Show Unauthorized Links". That should disable filter.access
.
Bakual - thanks!
Yes, that's what it has to be.
I guess Joomla developers need to be informed about this workaround
Its not a workaround - it is intended behaviour
Status | New | ⇒ | Closed |
Closed_Date | 0000-00-00 00:00:00 | ⇒ | 2018-01-12 10:50:51 |
Closed_By | ⇒ | brianteeman |
it is intended behaviour for showing article links
and workaround the server's high load
That's an outdated version of Joomla. Current stable release is 3.8.3 and you should also test with current staging version 3.8.4-dev. Many things have changed since version 3.6.5 and more things will change with Joomla 4; also some optimizations of database requests since 3.6.5.