Bug #1942

Engine does not terminate on final state

Added by S. Wrede almost 10 years ago. Updated almost 10 years ago.

Status:ResolvedStart date:08/19/2014
Priority:NormalDue date:
Assignee:-% Done:

100%

Category:-
Target version:-

Description

The current implementation of the engine shall terminate itself when a final state is reached. However, it does not. We need to check why.

visualvm.png (39.8 KB) N. Köster, 09/10/2014 12:24 PM

Associated revisions

Revision e211daba
Added by S. Wrede almost 10 years ago

refactored java package names
allow non-rsb statemachine models
added initial test case for simplest state machine, refs #1942

Revision b4b5e4c5
Added by J. Wienke almost 10 years ago

Unit test verifying termination for a single final state

Adds a unit test to verify the behavior in #1942. Probably solved by
previous work.

fixes #1942

Revision 451b1063
Added by J. Wienke almost 10 years ago

Unit test verifying termination for a single final state

Adds a unit test to verify the behavior in #1942. Probably solved by
previous work.

fixes #1942

Revision 69566506
Added by J. Wienke almost 10 years ago

Unit test verifying termination for a single final state

Adds a unit test to verify the behavior in #1942. Probably solved by
previous work.

fixes #1942

History

#1 Updated by J. Wienke almost 10 years ago

  • Status changed from New to Rejected

This was caused by invalid scxml documents which did not contain a final state.

#2 Updated by N. Köster almost 10 years ago

  • File visualvm.png added
  • Status changed from Rejected to Feedback

The following scxml MWE document

<scxml xmlns="http://www.w3.org/2005/07/scxml" version="1.0" initial="finished" name="final">
  <final id="finished"/>
</scxml>

leads to a blocking statemachine:

[bg: 0][nkoester@calcit] 12:16:41@10.09.14 
/homes/nkoester/$CSRA/bin/csra-scenario-coordination -f /tmp/test2.scxml 
Using SCXML file: /tmp/test2.scxml
Sep 10, 2014 12:17:15 PM rsb.scxml.RSBSCXMLParser parseSCXML
INFO: Processed SCXML document:
[#document: null]
Sep 10, 2014 12:17:15 PM rsb.scxml.Engine documentToStream
INFO: Using the following processed document:
<?xml version="1.0" encoding="UTF-8" standalone="no"?><scxml xmlns="http://www.w3.org/2005/07/scxml" initial="finished" name="final" version="1.0">
  <final id="finished"/>
</scxml>
Sep 10, 2014 12:17:15 PM rsb.scxml.TransitionInformer <init>
INFO: SCXML State Change informer is set up.
Sep 10, 2014 12:17:15 PM org.apache.commons.scxml2.env.SimpleSCXMLListener onEntry
INFO: enter /finished
Sep 10, 2014 12:17:15 PM org.apache.commons.scxml2.env.SimpleSCXMLListener onExit
INFO: exit /finished
Sep 10, 2014 12:17:15 PM rsb.scxml.Engine start
INFO: State Machine execution was terminated.

This SCXML is actually correctly formatted (contains a final state). But the Engine blocks anyways? See attachment for visualvm observation infos.

#3 Updated by J. Wienke almost 10 years ago

  • Status changed from Feedback to Resolved
  • % Done changed from 0 to 100

#4 Updated by J. Wienke almost 10 years ago

Please check again after my latest changes. A unit test with exactly this scxml document works without problems.

Also available in: Atom PDF