code: public static void cancelConcurrentScope(PvmExecutionImpl execution, PvmActivity cancelledScopeActivity) {
      ensureConcurrentScope(execution);
      LOG.debugCancelConcurrentScopeExecution(execution);
  
      execution.interrupt("Scope "+cancelledScopeActivity+" cancelled.");
      // <!> HACK set to event scope activity and leave activity instance
      execution.setActivity(cancelledScopeActivity);
      execution.leaveActivityInstance();
      execution.interrupt("Scope "+cancelledScopeActivity+" cancelled.");
      execution.destroy();
    }
docs: Cancels an execution which is both concurrent and scope. This can only happen if
  (a) the process instance has been migrated from a previous version to a new version of the process engine
  
  See: javadoc of this class for note about concurrent scopes.
  
  @param execution the concurrent scope execution to destroy
  @param cancelledScopeActivity the activity that cancels the execution; it must hold that
  cancellingActivity's event scope is the scope the execution is responsible for