Bug #18048
closedGenerating extension import list takes very long
0%
Description
Apache 1.3, MySQL 5.0.27, PHP 5.2.3, Windows XP
Importing from TER and searching the imported list is taking about 6 minutes.
At first I had to increase max_execution_time to 600 in the php.ini to get beyond the white page. (The .tgz archive was always properly downloaded very quickly, but the inserts into table cache_extensions took about 5 minutes.)
Next I found that every lookup into the cached information also consumed around 6 minutes and extensions were sometimes not found, although they were in the table.
Some profiling done on class.em_index.php reveiled, that 96% of that time was spent on the effort to identify installed extensions that are not found in the cached repository. Specifically, for each such extension in line 861 this call gets executed:
$this->xmlhandler->searchExtensionsXML($extKey, '', '', true);
And inside this function which seems to have been implemented to retrieve / filter the repository once and for all, several requests to the db are done.
I'm sure this can be implemented more cleverly. (And I also put in question that this information "is-in-repository: yes/no" is relevant to many people.)
Cheers, Steffen
(issue imported from #M7264)
Files