Bug 749528 - Signal event node is not triggered unless it has incomming connection
Summary: Signal event node is not triggered unless it has incomming connection
Keywords:
Status: VERIFIED
Alias: None
Product: JBoss Enterprise BRMS Platform 5
Classification: JBoss
Component: jBPM 5
Version: BRMS 5.3.0.GA
Hardware: Unspecified
OS: Unspecified
unspecified
medium
Target Milestone: ER6
: BRMS 5.3.0.GA
Assignee: Kris Verlaenen
QA Contact: Radovan Synek
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-10-27 11:21 UTC by Tomas Schlosser
Modified: 2022-05-31 22:28 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed:
Type: Bug


Attachments (Terms of Use)

Description Tomas Schlosser 2011-10-27 11:21:27 UTC
Description of problem:
Signal event node shoul create a NodeTriggeredEvent when it is triggered by expected event. now it is triggered only when it has an incomming connection (which by documentation it should not have).

Version-Release number of selected component (if applicable):
BRMS-5.3.0.dev4

How reproducible:
Every time

Steps to Reproduce:
1. run attached reproducer
2.
3.
  
Actual results:
Start was triggered
Gateway was triggered
signal-incoming was triggered
Gateway was triggered
Gateway was triggered
Gateway was triggered
End was triggered
Finished...

Expected results:
Start was triggered
Gateway was triggered
signal-incoming was triggered
signal-no-incoming was triggered
Gateway was triggered
Gateway was triggered
Gateway was triggered
End was triggered
Finished...

Additional info:

Comment 1 Kris Verlaenen 2012-01-02 18:53:46 UTC
I'm not sure this is a real issue, but rather a discussion about what it means to trigger a node.  There are currently two types of node events, triggering (entering) a node and leaving a node.  In the current implementation, catching intermediate events are not generating trigger events (they are only generating left events, as they are not really triggered, rather activated from outside). Similarly, throwing intermediate events are not generating left events (they are only generating triggered events, as they are not really left, as they have no outgoing connection).

It would be possible to also generate both of these events for intermediate events, but since intermediate events don't have any real behaviour themselves, I'm not sure it would be useful to do so.

Comment 2 Kris Verlaenen 2012-01-25 13:33:31 UTC
Could we decide whether this is actually on issue or not and if not, close the issue?  I would recommend that the current implementation is what we believe should be the expected behaviour.  If the user want to get an event when a signal node is triggered by an external event, he can use the nodeLeftEvent for that.

Comment 3 Tomas Schlosser 2012-01-31 08:35:00 UTC
Thank you Kris for clarification. It sounds logical as you described.
However, could it be added to documentation? Some generic information like "nodes without incoming connection do not generate NodeTriggeredEvent and nodes without outgoing connection do not generate NodeLeftEvent".

Comment 4 Kris Verlaenen 2012-04-17 13:52:10 UTC
Updated in community docs:
https://github.com/droolsjbpm/jbpm/commit/89bca815b8efc026dae51cd52afc0077a4f0eb71

Comment 7 Ryan Zhang 2012-04-23 07:40:14 UTC
Update status to ON_QA. Please verify them against ER6.


Note You need to log in before you can comment on or make changes to this bug.