code: @Override
      public void abort( long woinRefNum ){
          log.info( "Abort execution of workflow instance " + woinRefNum );
          ExecutionError error = executionErrorService.findByWoinRefNum( woinRefNum );
          if( error != null ){
              workflowInstanceService.rewindAfterError( error.getWoinRefNum() );
              if( error.getWoitRefNum() != null ){
                  workItemService.rewindAfterError( error.getWoitRefNum() );
              }
              executionErrorService.delete( error.getRefNum() );
          }
          workflowInstanceService.markAbort( woinRefNum );
          workflowInstanceService.unlock( woinRefNum );
      }
docs: Prepares the workflow instance for being aborted and marks its status to {@link WorkflowInstanceStatus#ABORT}.
  Preparing the workflow instance includes rewinding it from errors and unlocking it.