-
- Téléchargements
Révision générale du déclenchement des tâches par le fichier source:spip/ecrire/inc/cron.php.
Ce fichier comportait des instructions spécifiques à MySQL, savoir les fonctions de verrouillage SQL et la gestion du fichier mysql_out. Le verrouillage SQL avait pour intention d'empêcher deux tâches quelconques de s'exécuter simultanément, intention en partie déjà réalisée par le fichier '''cron.lock''', et refaite aussi en partie par les fichiers '''.lock''' associé à chaque tache. Après réécriture de la gestion de ces fichiers, le verrouillage SQL opéré est devenu redondant et a donc été évacué. A noter toutefois qu'il serait opportun de remplacer cet ancien verrouillage par l'interdiction de certaines écritures pendant certaines de ces tâches mais qui peuvent rentrer en conflit avec (par exemple une visite pendant qu'on met à jour la table des visites): les transactions SQL standard pointent le bout de leur nez. Le fichier mysql_out est déjà controlé par db_mysql_connect appelée par spip_connect pour initialiser la connexion. Le délai de modification de ce fichier était cependant plus élevé pour Cron, mais la nouvelle gestion des fichiers '''.lock''' devrait donner un comportement à peu près équivalent car la datation des fichiers est refaite à la fin du calcul pour mieux garantir l'espaceement entre tâches. Par ailleurs il n'était pas possible de surcharger la fonction '''spip_cron()''', c'est à présent choise faite, sous le nom '''inc_cron()'''. Les fonctions préfixées par '''cron''' gardent leur interfaces (mais il serait sans doute plus logique de créér un répertoire '''cron/''' pour elles).
parent
39ea8dae
Aucune branche associée trouvée
Aucune étiquette associée trouvée
Chargement en cours
Veuillez vous inscrire ou vous se connecter pour commenter