Uploaded image for project: 'jBPM'
  1. jBPM
  2. JBPM-3916

Wrong ID numbering in Node Instances inside Multiple Instances

    XMLWordPrintable

Details

    Description

      When using a process containing a Multiple Instances node (MI node) with a human task inside it, the Node Instance IDs on the BAM logs are inconsistent, having different node instances recorded with the same ID.

      Assume the simple scenario when the process has a start node, connected to a script node, then a MI node and finally an end node.
      Inside the MI node there is also another start node, connected to a human task node and then another end node.
      Assume also that the MI node is setup to run 2 times.

      In this case the initial logs are (almost) as expected:
      NodeInstance 0 in (Start node)
      NodeInstance 0 out (Start node)
      NodeInstance 1 in (Script node)
      NodeInstance 1 out (Script node)
      NodeInstance 2 in (MI node)
      NodeInstance 2:2:0 in (Inside start node - 1st iteration)
      NodeInstance 2:2:0 out (Inside start node - 1st iteration)
      NodeInstance 2:2:1 in (Human task - 1st iteration)
      NodeInstance 2:3:0 in (Inside start node - 2nd iteration)
      NodeInstance 2:3:0 out (Inside start node - 2nd iteration)
      NodeInstance 2:3:1 in (Human task - 2nd iteration)
      (note that the iteration numbering starting at 2 is strange, but not a problem)

      The problem is when the first human task gets completed. These would be the expected logs:
      NodeInstance 2:2:1 out (Human task - 1st iteration)
      NodeInstance 2:2:2 in (Inside end node - 1st iteration)
      NodeInstance 2:2:2 out (Inside end node - 1st iteration)

      But instead we get the following:
      NodeInstance 2:2:1 out (Human task - 1st iteration)
      NodeInstance 2:2:1 in (Inside end node - 1st iteration)
      NodeInstance 2:2:1 out (Inside end node - 1st iteration)

      By trying other examples, I have figured out that The ID of the next node instance to be executed after the human task is reseted to 1 (as if the human task was 0), instead of being incremented.

      Attachments

        Activity

          People

            marco.rietveld Marco Rietveld (Inactive)
            gaps_jira Jorge Galvão (Inactive)
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: