Désactivation du cron

Désactivation du cron

par Pascale Laurier,
Nombre de réponses : 10

Bonjour,
Depuis 3 jours le cron est automatiquement désactivé suite à des erreurs d'exécution consécutives.
Il s'agit d'un moodle 3.6 hébergé sur un serveur mutualisé ovh.
Le log me retourne ceci :
Error while processing attempt 1361 at 50 quiz:
Erreur de programmation détectée. Ceci doit être corrigé par un programmeur : There is no question_attempt number 59 in this attempt.
#0 /home/site/www/question/engine/questionusage.php(277): question_usage_by_activity->check_slot('59')
#1 /home/site/www/question/engine/questionusage.php(224): question_usage_by_activity->get_question_attempt('59')
#2 /home/site/www/mod/quiz/attemptlib.php(1162): question_usage_by_activity->get_question('59')
#3 /home/site/www/mod/quiz/attemptlib.php(708): quiz_attempt->is_real_question('59')
#4 /home/site/www/mod/quiz/attemptlib.php(597): quiz_attempt->number_questions()
#5 /home/site/www/mod/quiz/cronlib.php(78): quiz_attempt->__construct(Object(stdClass), Object(stdClass), Object(stdClass), Object(stdClass))
#6 /home/site/www/mod/quiz/lib.php(598): mod_quiz_overdue_attempt_updater->update_overdue_attempts(1583141481, 1583141421)
#7 /home/site/www/lib/classes/task/legacy_plugin_cron_task.php(93): quiz_cron()
#8 /home/site/www/lib/cronlib.php(105): core\task\legacy_plugin_cron_task->execute()
#9 /home/site/www/lib/cronlib.php(67): cron_run_inner_scheduled_task(Object(core\task\legacy_plugin_cron_task))
#10 /home/site/www/admin/cron.php(81): cron_run()
#11 {main}
Pourriez vous m'indiquer si le bien est bien là et comment le corriger ? Merci


Moyenne des évaluations  -
En réponse à Pascale Laurier

Re: Désactivation du cron

par Christian Bocquet,
Avatar Moodleurs particulièrement utiles

Bonjour,

Avant d'aller explorer la base de données, vous pouvez vérifier s'il n'y a pas d'anomalies dans le test id=50 à l'adresse:

votremoodle/mod/quiz/view.php?id=50

et faire une relecture, si elle est possible, de la tentative, id=1361 à l'adresse:

votremoodle/mod/quiz/review.php?attempt=1361


Christian

Moyenne des évaluations Utile (1)
En réponse à Pascale Laurier

Re: Désactivation du cron

par Rémi Lefeuvre,
Bonjour Pascale,

Je prends le risque d'émettre une hypothèse... Il me semble qu'une donnée est manquante dans ta base de données.

Si tu es bien l'administratrice du Moodle concerné, je te propose de tenter d'accéder à la page : /mod/quiz/view.php?id=50
Pourquoi 50 ? Parce que c'est l'ID référencé à la première ligne du message d'erreur et que j'espère que c'est celui de l'activité Test qui déconne...
Si ce n'est pas ça, je creuserai de mon côté donc tiens-moi au courant !

Si tu tombes bien sur une activité Test, tente - sur une sauvegarde - d'accéder à la page /mod/quiz/report.php?id=50&mode=overview et de supprimer la tentative qui pose problème.
Comment savoir laquelle est-ce ? Passe la souris sur les liens Relecture de cette tentative, si l'adresse qui s'affiche contient attempt=1361, c'est celle-ci qu'il te faut cocher et supprimer (tu peux tenter une simple ré-évaluation d'abord si tu veux).

Voilà pour commencer, rapporte-nous ce qui se passe clin d’œil
En réponse à Rémi Lefeuvre

Re: Désactivation du cron

par Pascale Laurier,
Bonjour,
Merci pour ces données, j'avance, j'ai pu retrouver ce quiz 50 et le cours dans lequel il se trouvait, c'était une ancienne sauvegarde de cours fermé qui datait de 2015 ! j'ai pu nettoyer et plus d'erreur à ce niveau là.
Mais la désactivation du cron continue.
A partir de l'onglet taches programmées, j'ai désactivé certaines taches, mais j'ai toujours ceci qui persiste qq soit les taches activées.

Execute adhoc task: tool_dataprivacy\task\process_data_request_task
[2020-03-02 23:23:02] ... started 23:23:09. Current memory use 17.3Mo.
[2020-03-02 23:23:02] Warning: No purpose is defined at the system level. Deletion will delete all.
[2020-03-02 23:23:02] Pre-processing request...
[2020-03-02 23:23:02] Récupération des données de 466 composants (lundi 2 mars 2020, 23:23)
[2020-03-02 23:23:02] Traitement de antivirus_clamav (1/466) (lundi 2 mars 2020, 23:23)
[2020-03-02 23:23:02] Traitement de availability_completion (2/466) (lundi 2 mars 2020, 23:23)
[2020-03-02 23:23:02] Traitement de availability_date (3/466) (lundi 2 mars 2020, 23:23)
[2020-03-02 23:23:02] Traitement de availability_grade (4/466) (lundi 2 mars 2020, 23:23)
[2020-03-02 23:23:02] Traitement de availability_group (5/466) (lundi 2 mars 2020, 23:23)
[2020-03-02 23:23:02] Traitement de availability_grouping (6/466) (lundi 2 mars 2020, 23:23)
[2020-03-02 23:23:02] Traitement de availability_profile (7/466) (lundi 2 mars 2020, 23:23)
[2020-03-02 23:23:02] Traitement de qtype_calculated (8/466) (lundi 2 mars 2020, 23:23)
[2020-03-02 23:23:02] Traitement de qtype_calculatedmulti (9/466) (lundi 2 mars 2020, 23:23)
[2020-03-02 23:23:02] Traitement de qtype_calculatedsimple (10/466) (lundi 2 mars 2020, 23:23)
[2020-03-02 23:23:02] Traitement de qtype_ddimageortext (11/466) (lundi 2 mars 2020, 23:23)
[2020-03-02 23:23:02] Traitement de qtype_ddmarker (12/466) (lundi 2 mars 2020, 23:23)
[2020-03-02 23:23:02] Traitement de qtype_ddwtos (13/466) (lundi 2 mars 2020, 23:23)
[2020-03-02 23:23:02] Traitement de qtype_description (14/466) (lundi 2 mars 2020, 23:23)
[2020-03-02 23:23:02] Traitement de qtype_essay (15/466) (lundi 2 mars 2020, 23:23)
[2020-03-02 23:23:02] Traitement de qtype_gapselect (16/466) (lundi 2 mars 2020, 23:23).......

Et rien ne change si je désactive les 4 taches liées à dataprivacy
En réponse à Pascale Laurier

Re: Désactivation du cron

par Christian Bocquet,
Avatar Moodleurs particulièrement utiles

Comme l'indique la première ligne:

Execute adhoc task: tool_dataprivacy\task\process_data_request_task

ce n'est pas une tâche de type "Programmée", mais de type "Ad hoc" qui s’exécute.
il est donc inutile de désactiver des tâches programmées

Votre version Moodle est la 3.6
Pouvez-vous préciser 3.6.?

Christian

En réponse à Christian Bocquet

Re: Désactivation du cron

par Pascale Laurier,
Moodle 3.6.4+

Merci
En réponse à Pascale Laurier

Re: Désactivation du cron

par Christian Bocquet,
Avatar Moodleurs particulièrement utiles

Suite à la lecture de ce fil de discussion en espagnol de Josué et de la solution trouvée en conclusion qui s'inspire de ce message en anglais de Greg, vous pouvez essayer d'ajouter au fichier privacy/classes/manager.php à la suite de la ligne 236 :

if ($a->component == "qtype_gapselect") {
print "Skipping qtype_gapselect\n";
continue;
}
si c'est seulement le plugin qtype_gapselect qui fait le blocage du cron. Sinon, comme l'a fait Josué, compléter et adapter avec les autres plugins qui font blocage du cron.

Christian

Moyenne des évaluations Utile (1)
En réponse à Christian Bocquet

Re: Désactivation du cron

par Pascale Laurier,
oui en effet, ça ressemble bien à mon problème. Je vais tester cette solution et je vous avertirai du résultat. Merci
En réponse à Pascale Laurier

Re: Désactivation du cron

par Pascale Laurier,
Problème résolu (j'espère que ce n'est pas trop provisoire), le cron n'est plus désactivé automatiquement.
J'ai appliqué la solution ci-dessus à un thème personnalisé qui était basé sur Clean.
Seriez vous m'expliquer pourquoi ce thème utilisé depuis longtemps bloque le traitement (je n'ai pas effectuée de mise à jour récemment) ?
Merci encore d'avoir résolu mon problème.
En réponse à Pascale Laurier

Re: Désactivation du cron

par Christian Bocquet,
Avatar Moodleurs particulièrement utiles

Le fichier modifié privacy/classes/manager.php est indépendant du thème utilisé. Je ne pense pas que ce soit le thème qui bloque le traitement.

Maintenant, comme on le dit d'habitude, vous devriez mettre à jour (si possible) votre site Moodle vers une version stable supportée (à la fois pour les bogues et la sécurité), donc vers la version 3.7.4 ou la version 3.8.1.

Voir ici : Sortie de Moodle 3.8.1, 3.7.4, 3.6.8 et 3.5.10
"Veuillez noter que les branches 3.5 et 3.6 sont supportées uniquement pour les bogues de sécurité et de confidentialité des données."

Bonne continuation.

Christian

En réponse à Christian Bocquet

Re: Désactivation du cron

par Séverin Terrier,
Avatar Documentation writers Avatar Moodleurs particulièrement utiles Avatar Testeurs Avatar Traducteurs
Bonjour,

Et tant qu'à faire, attendre lundi pour installer les nouvelles versions qui sortiront ce jour là clin d’œil

Séverin