Project

General

Profile

Bug #38253

Arrêt en plein milieu dans un workflow : crash de workers ?

Added by Benjamin Dauvergne 3 months ago. Updated 3 months ago.

Status:
Nouveau
Priority:
Normal
Assignee:
-
Category:
-
Target version:
-
Start date:
06 Dec 2019
Due date:
% Done:

0%

Patch proposed:
No
Planning:
No
Demande du club utilisateur:
No

Description

C'est le ticket #38218 sur le projet alpes-maritimes.

On a une demande (du 28/11/2019) avec trois statuts qui s'enchaînent les deux premiers ne faisant que des modifications de donnée de traitement suivi d'un saut automatique sur le saut suivant :

S0 -> Modification donnée de traitement -> Saut vers S1 -> Modification de donnée de traitement -> Saut vers S2

Là la demande s'est arrêté sans raison sur S1, je ne vois pas de modification du workflow autour de cette date (les logs sur la machine s'arrête au 22 novembre mais il y a d'autres demandes traitées autour). Les données de traitement n'ont pas été modifiées comme elles devraient l'être (alors qu'il y a des modifications déjà dans S0 qui ont donc été exécutées).

Mes logs syslog s'arrêtent au 29 novembre (et journald commence au 5 décembre, i.e. hier par rapport au moment où j'écris ces lignes).

Il n'y aucune trace reçu à ces dates pour cette demande (ni enregistré sur le workflow/formulaire), et donc je pense que ce serait du à des crashs (ou arrêts) du worker mais il faudrait voir pourquoi on a pas au moins le résultat de la première modification des données de traitement1.

[1]: wcs.workflows.perform_items() a un fonctionnement récursif, si un item change le statut de la demande en cours d'exécution, le parcours des items est arrêté, une évolution est ajoutée et le formdata sauvegardé avant de continuer en exécutant les items du statut suivant; je ne vois pas comment il serait possible de perdre le contenu des champs de traitement dans ce cadre.

PS: en fait même SetBackofficeFieldsWorkflowStatusItem fait un formdata.store() en fin de perform()...

PS2: si jamais il y avait une transaction autour de tout ça mais il me semble que w.c.s. fait de toute façon un conn.commit() à la fin de FormData.store()

History

#1 Updated by Benjamin Dauvergne 3 months ago

  • Related to Development #38128: Ne pas inclure les premières années vides lors de regroupements par année added

#2 Updated by Mikaël Ates 3 months ago

  • Related to deleted (Development #38128: Ne pas inclure les premières années vides lors de regroupements par année)

#4 Updated by Benjamin Dauvergne 3 months ago

  • Description updated (diff)

#5 Updated by Benjamin Dauvergne 3 months ago

  • Description updated (diff)

Also available in: Atom PDF