Skip to content

Test case with multiple processes and multiple parallel executions needed #76

@falko

Description

@falko

An edge case in ThreadSafeExecution#complete() seems to be handled in a too simple way that might only work in a unit test:

  public void complete() {
    try {
      getRuntimeServiceWhenCommitted().signal(getId(), getVariables());
    } catch (PvmException e) {
      if (e.getMessage().equals("cannot signal execution " + getId() + ": it has no current activity")) {
        Execution execution = getRuntimeService().createExecutionQuery()
          .activityId(getCurrentActivityId()) // FIXME test with multiple instances running in parallel; maybe getActivityInstanceId() was meant here
          .singleResult();
        getRuntimeServiceWhenCommitted().signal(execution.getId(), getVariables());
      } else {
        throw e;
      }
    }
  }

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions