Failed to evaluate job outputs error

I am trying to run an example wdl on HPC with a custom configuration file.

Here is the wdl I am using:

task inc {
  Int i
  command <<<
     python -c "print(${i} + 1)"
  >>>
  output {
    Int incremented = read_int(stdout())
  }
}

task sum {
  Array[Int] ints

  command <<<
  python -c "print(${sep="+" ints})"
  >>>
  output {
    Int sum = read_int(stdout())
  }
}

workflow wf {
  Array[Int] integers = [1,2,3,4,5]
  scatter (i in integers) {
    call inc {input: i=i}
  }
  call sum {input: ints = inc.incremented}
}

This is my config file

include required(classpath("application"))
system {
 input-read-limits {
    int = 5000
  }
}
backend {
  providers {
    TORQUE {
      actor-factory = "cromwell.backend.impl.sfs.config.ConfigBackendLifecycleActorFactory"
      config {
        runtime-attributes = """
        Int cpu = 1
        Float memory_gb = 1
        String queue = "batch"
        String walltime = "1:00:00"
        """
        submit = """
        qsub -V -d ${cwd} -N ${job_name} -o ${out} -e ${err} -q ${queue} \
        -l nodes=1:ppn=${cpu} -l walltime=${walltime} \
        ${script}
        """
        job-id-regex = "(\\d+).*"
        kill = "qdel ${job_id}"
        check-alive = "qstat ${job_id}"
      }
    }
  }
  default = TORQUE
}

Here is the error message

[ERROR] [09/20/2018 11:44:06.102] [cromwell-system-akka.dispatchers.engine-dispatcher-78] [akka://cromwell-system/user/SingleWorkflowRunnerActor/WorkflowManagerActor] WorkflowManagerActor Workflow e06ee475-15b9-470f-9c02-f19e148e146f failed (during ExecutingWorkflowState): cromwell.backend.standard.StandardAsyncExecutionActor$$anon$2: Failed to evaluate job outputs:
Bad output 'inc.incremented': For input string: "6
...
Bad output 'inc.incremented': For input string: "2
...
Bad output 'inc.incremented': For input string: "4
..
Bad output 'inc.incremented': For input string: "5
...

It seems like task inc finished without issue, but when reading the outputs of task inc, the program treats them as strings not integers.
Strangely this example wdl can be executed successfully without the config file: java -jar cromwell.jar run example.wdl

Could someone please help me with this?

Thank you

Tagged:

Answers

  • bshifawbshifaw moonMember, Broadie, Moderator admin

    Hi @Mandy

    Your post has been moved over to the cromwell forum since your question is more cromwell related instead gatk tool related.

  • ChrisLChrisL Cambridge, MAMember, Broadie, Moderator, Dev ✭✭

    Hi @Mandy -

    it looks like Cromwell is maybe getting more than just the python output back on stdout - I wonder if your HPC config is accidentally dropping something into stdout (ie more than just a single integer)?

    To double check - could you check what's in the stdout file produced by this task?

Sign In or Register to comment.