mirror of
https://github.com/moodle/moodle.git
synced 2025-03-22 08:30:04 +01:00
Here we are reducing the xhprof runs data by removing the __Mustache==>__Mustache calls and all the orphaned data. To save N iterations what we are doing is: 0. The information is "topologically" sorted, so we ensure that all the parents in the data are processed before the children. (this will help a lot when cleaning orphaned data, see below). 1. First pass, all the candidate (by regexp) calls are removed from the run data. 2. Second pass, all the orphaned information (calls that have ended losing his parent) are also removed, so data is consistent. Note that, normally we would need N passes to remove all the orphaned data (because each pass creates new orphan candidates), but, as far as we have ensured that the information is topologically sorted (see point 0 above), all this can be done in one unique pass. TODO: - Add unit tests. - Enable some system to be able to decide which utilities we want to get the data reduced and which ones will continue using the complete data. Right now the reduction is being applied to all the utilities (both table and graph views). - Document the change and, if implemented, the way to select between complete/reduced data. - Consider adding some caching to speed-up the reduction process (some TODOs have been left in the code pointing to the critical points).
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
…
.-..-. _____ | || | /____/-.---_ .---. .---. .-.| || | .---. | | _ _ |/ _ \/ _ \/ _ || |/ __ \ * | | | | | || |_| || |_| || |_| || || |___/ |_| |_| |_|\_____/\_____/\_____||_|\_____) Moodle - the world's open source learning platform Moodle <https://moodle.org> is a learning platform designed to provide educators, administrators and learners with a single robust, secure and integrated system to create personalised learning environments. You can download Moodle <https://download.moodle.org> and run it on your own web server, ask one of our Moodle Partners <https://moodle.com/partners/> to assist you, or have a MoodleCloud site <https://moodle.com/cloud/> set up for you. Moodle is widely used around the world by universities, schools, companies and all manner of organisations and individuals. Moodle is provided freely as open source software, under the GNU General Public License <https://docs.moodle.org/dev/License>. Moodle is written in PHP and JavaScript and uses an SQL database for storing the data. See <https://docs.moodle.org> for details of Moodle's many features.
Description
Languages
PHP
78.1%
JavaScript
14.6%
Gherkin
3.5%
CSS
1.7%
Mustache
1.6%
Other
0.4%