Uploaded image for project: 'Red Hat Process Automation Manager'
  1. Red Hat Process Automation Manager
  2. RHPAM-1648

Improving process compiler so "XOR split could not find at least one valid outgoing connection for split" error is thrown during compile time and not runtime

    Details

    • Type: Enhancement
    • Status: Verified (View Workflow)
    • Priority: Minor
    • Resolution: Done
    • Affects Version/s: 7.1.0.GA
    • Fix Version/s: 7.3.0.GA
    • Component/s: jBPM Core
    • Labels:
      None
    • Target Release:
    • Sprint:
      2018 Week 48-50, 2019 Week 02-04, 2018 Week 51-01

      Description

      if you run the attached process:

      with process variable 'choice' set to 1, it gets executed OK.
      If you run it with variable 'choice' set to 2, it fails the error in $subject.

      Full stacktrace:
      https://gist.github.com/agiertli/e421d8fdde50f829361e4fe59d8c8c6b

      When I was step-by-step debugging this issue, I have noticed that if the first XOR has N outgoing connections to N tasks, then all are included in the internal Constraints hashmap. But if it has M outgoing connections to another gateway (similarly as in this image) then only 1 of these M is added to the constraint map.

      The explanation for this behavior from engineering is this:

      The problem with this process is that there is not really a diverge in the process flows as both sequence flows point to the same node - in this case join. If you make them distinct (go to other nodes) then all should work just fine.

      Since the process, the way it's modeled right now, will always fail during runtime, this construct should be caught during compilation time instead of runtime.

        Gliffy Diagrams

          Attachments

            Activity

              People

              • Assignee:
                swiderski.maciej Maciej Swiderski
                Reporter:
                anton.giertli Anton Giertli
                Tester:
                Marian Macik
              • Votes:
                0 Vote for this issue
                Watchers:
                6 Start watching this issue

                Dates

                • Created:
                  Updated:
                  Resolved: