flowable / flowable/flowable-engine

Async StartEvent causes process level 'start' execution listener to be run twice

Ouverte
#2,855 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Langage dominant
Java
Étoiles
9.5k
Forks
2.9k
Merge moyen
7 h 8 min
PR mergées (30 j)
2

Description

**Describe the bug**
If the start event element of the diagram is **async** then `ContinueProcessOperation#run` is called twice for the start event element which leads to calling any process level execution listeners twice as well (see also `ContinueProcessOperation#continueThroughFlowNode` and `ContinueProcessOperation#executeProcessStartExecutionListeners`).

If the start event element is **sync** then the listener is called just once (as expected).

**Expected behavior**
The process level start execution listener should be called just once when the process is started.

**Code**
Should be pretty straightforward for you to reproduce with any trivial diagram that starts like this:
```





...
```

**Additional context**
Using latest Flowable version (process engine only) with Spring Boot, Postgres 10.

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Piste de recherche

Commencez par lire ContinueProcessOperation#run, ContinueProcessOperation#continueThroughFlowNode et ContinueProcessOperation#executeProcessStartExecutionListeners. Reproduisez le problème avec un processus exécutable minimal contenant un async startEvent et un listener d’exécution de démarrage au niveau du processus, puis comparez-le à un événement de démarrage synchrone. Le travail est terminé lorsque le listener s’exécute exactement une fois au démarrage du processus async.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
java
Domaine
backend
Type d'issue
Bug
Difficulté
3/5
Temps estimé
1-2 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
48/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.