Voir les traceurs | Evolutions | Exporter au format CSV

Date :
21/02/2024 16:42
Priorité :
3
État :
Closed
Proposé par :
Michael Bideau (mbideau)
Confié à :
Michael Bideau (mbideau)
Version cible :
6.4.0
Résumé :
Pour le traitement des tâches, vérifier le statut de la tâche avant de la traiter

Description détaillée
Lorsque le traitement des taches est très long, il peu arriver qu'un second se déclenche en parallèle (ce qui n'est jamais souhaitable, avec ou sans cette évolution). Dans ce cas, cela génère des dossiers en doublons. En effet, actuellement, le traitement des tâches commence par lister toutes les tâches à traiter, puis les traitent. Or dans le cas d'un traitement qui dure, si un autre démarre il aura une partie de la liste des tâches à traiter en commun. Et ces tâches seront donc traitées deux fois, générant des dossiers en doublons.

L'évolution consiste à découper en deux l'étape d'amont du traitement:
- d'abord identifier les tâches à traiter (en ne listant que leurs IDs)
- puis pour chacune d'elle, avant de la traiter, récupérer ses infos, puis vérifier son état/statut pour s'assurer qu'elle n'ait pas été traitée par ailleurs

Après cette évolution, si deux traitements se déclenchent en parallèle et partagent une partie de leur liste de tâches à traiter, tant que les tâches sont des créations de dossiers cela n'aura pas d'impact, mais dès que l'un des deux traitement essaiera de traiter une tâche d'ajout de pièce à un dossier, alors si ce dossier est en cours de création (mais pas encore créé), alors ce traitement va produire une erreur sur cette tâche, et également sur toutes les tâches qui auraient une dépendance (création d'un dossier) non satisfaite.
En résumé, la parallélisation ne garantie pas l'ordre des tâches, alors que cet ordre est important d'un point de vue métier. C'est pour cela que la parallélisation n'est pas souhaitable.
L'évolution ici permet simplement d'éviter la création des dossiers en doublons dans le cas d'un "malencontreux" double traitement des tâches.

No comments have been posted

Pas de documents joints

Champ Ancienne valeur Date Par
status_idOpen28/02/2024 15:54Sofien TIMEZOUAGHT
close_dateAucun(e)28/02/2024 15:54Sofien TIMEZOUAGHT
FEDER Powered By FusionForge Collaborative Development Environment Charte d'utilisation / Nous contacter / Mentions légales Haut de page