Pouvez vous vérifier si la désactivation de cette partie du cron suspend le problème ?
Car si le con est stoppé avant de traiter les notifications des forums il y a peu de chance que celles-ci ne soient envoyées :>(
Le plus simple pour cela est de modifier à la main la fonction quiz_cron() du fichier
./mod/quiz/lip.php
en mettant tout le contenu en commentaire (sauf la dernière ligne)
/**
* Quiz periodic clean-up tasks.
*/
function quiz_cron() {
/* ----------------------------------------
// Mettre tout ce paquet en commentaire
global $CFG;
require_once($CFG->dirroot . '/mod/quiz/cronlib.php');
mtrace('');
// Run cron for our sub-plugin types.
cron_execute_plugin_type('quiz', 'quiz reports');
cron_execute_plugin_type('quizaccess', 'quiz access rules');
------------------------------------- */
return true;
}
puis de relancer le cron...
Si après ça les notifications du forum passent normalement c'est que le problème provient effectivement des tables des quiz de la base de donnée Moodle... et en particulier de la table
mdl_quiz_attempts
qui est peut-être incohérente suite aux différents mises à jour.
A ce propos allez jeter un oeil sur la requête
function quiz_get_attempt_usertime_sql ($redundantwhereclauses = '') { ... }
du fichier ./mod/quiz/locallib.php
qui ne contient pas moins de 7 jointures !
On ne s'étonnera pas que ça puisse ralentir sinon bloquer le serveur Moodle .