-
Bug
-
Resolution: Fixed
-
Major
-
3.7.4, 3.8.1, 3.9
-
MOODLE_37_STABLE, MOODLE_38_STABLE, MOODLE_39_STABLE
-
MOODLE_37_STABLE, MOODLE_38_STABLE
-
MDL-67674_master -
Similar to MDL-61305, on a system with a large number of course categories, rebuilding the course category tree and writing it to cache can take a signifiant amount of time. This is especially true if the cache is stored on the file system, since the cache is written using set_many which creates a large number of small files (a separate issue which might be worth looking into).
Since this cache is accessed on every page that displays the navigation, on a busy system is it currently possible that multiple requests will be trying to rebuild the cache at once, and thus re-writing to the same large number of small files at once. We have found this to cause severe CPU spikes on our file server, leading to system-wide performance issues.
Ideally we should lock the rebuilding just like we have with the modinfo cache.
- blocks
-
MDL-67681 Improve course category tree cache performance by storing against single key instead of multiple
- Closed
- caused a regression
-
MDL-69892 Moving many courses very quickly can make Moodle unusable on busy sites
- Closed
- has a non-specific relationship to
-
MDL-61305 Performance: Modinfo cache can get built in parallel
- Closed