Uploaded image for project: 'Commons SCXML'
  1. Commons SCXML
  2. SCXML-52

Error on resolving conflicting transitions for compound states

    XMLWordPrintableJSON

    Details

    • Type: Bug
    • Status: Closed
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 0.6
    • Fix Version/s: 0.7
    • Labels:
      None

      Description

      There seems to be a problem on the resolution of conflicting transitions for compound states. See the following scxml document:

      <scxml xmlns="http://www.w3.org/2005/07/scxml" version="1.0" initialstate="s1">
      <datamodel>
      <data name="x"/>
      </datamodel>

      <state id="s1">
      <initial>
      <transition target="s11"/>
      </initial>

      <transition event="event_1">
      <assign name="x" expr="'s1'"/>
      </transition>

      <transition event="event_2" target="s1">
      <assign name="x" expr="'s1'"/>
      </transition>

      <state id="s11">
      <transition event="event_1">
      <assign name="x" expr="'s11'"/>
      </transition>
      <transition event="event_2" target="s11">
      <assign name="x" expr="'s11'"/>
      </transition>
      </state>
      </state>

      <state id="s2" final="true" />
      </scxml>

      The state machine enters a compound state s1 which contains another state s11 as its intitial state. Both states have transitions on event_1 and event_2. Note that event_1 has no target, whereas event_2 has a target towards the same state.

      For event_2 everything works as expected, i.e. only the transition on state s11 is executed and therefor s11 is reentered (I have a listener in my environment and can monitor this).

      The error occurs at event_1. On event_1 both transitions of s1 and s11 are executed - but only once. After this, the state machine gets stuck (in particular the currentStates-List is empty). Any subsequent event will not cause any further action.

        Attachments

          Activity

            People

            • Assignee:
              Unassigned
              Reporter:
              ingmar Ingmar Kliche
            • Votes:
              0 Vote for this issue
              Watchers:
              0 Start watching this issue

              Dates

              • Created:
                Updated:
                Resolved: